nopCommerceソリューションでは、既存のASP.NETページを、メッセージを表示するだけの非常に単純な新しいページに置き換える必要がありました。新しいASP.NETページには、nopCommerceに関連するもの、コードビハインド、次のようなことが起こる理由を示すものはまったくありません。
自動的に、コードの行がレンダリングされたHTMLに挿入されます(この場合、デフォルトのテーマcssファイルへのリンク)。
これは、新しいASP.NETファイルのコードです。
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="CheckoutCompleted.aspx.cs" Inherits="CheckoutCompleted" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Shop</title>
</head>
<body>
<form id="form1" runat="server">
<div>Your order has now been completed.</div>
</form>
</body>
</html>
そして、これはブラウザにレンダリングされます:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Shop</title>
<link href="App_Themes/DarkOrange/styles.css" type="text/css" rel="stylesheet" />
</head>
<body>
<form name="form1" method="post" action="CheckoutCompleted.aspx" id="form1">
<div><input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUKLTQwMDkzNTAzN2Rk4txlLxJclpkuKfo1dNvs77An124dQqbJKyMfrIgvgaY=" /></div>
<div>Your order has now been completed.</div>
</form>
</body>
</html>
CheckoutCompleted.cs(私たち自身の新しいコード)の背後にあるコードは次のようになります。
public partial class CheckoutCompleted : System.Web.UI.Page
{
}
Page_Loadで設定されたブレークポイントで実行が停止するため、正しい.csが参照されます。
したがって、いくつかのメカニズムが新しい行を追加します。web.configでヒントを確認しましたが、いくつかのクールなASP.NET機能(nopCommerceとは無関係-彼らはそれを使用しただけだと思います)を知らないと思います。
それはおそらく何でしょうか?