[英]Make ASP.NET application using Notepad
我使用Notepad ++制作了一个ASP.NET应用程序。 在本练习中,我不想使用Visual Studio或任何其他工具。 我想了解这个过程。
我创建了自己的网站,运行良好,运行良好。
现在我想在页面后面添加一些C#代码,包括母版页和单个页面。
到目前为止,我有一个名为Home.aspx的文件,我想为此添加一个C#文件。
我创建了一个名为Home.aspx.cs的文件。 以下是该文件的完整内容:
protected void Page_Load(object sender, EventArgs e)
{
Response.Write("LOAD");
Response.End();
}
但是当页面加载时,这个文件没有加载。 显然我错过了一些东西,但我不确定是什么。 可能是我的web.config或其他文件夹或语言参考中的引用,告诉页面这是C#,还是告诉Page_Load实际运行的东西?
另外,我想为我的母版页执行相同的操作,该母版页当前称为masterPage.master 。
那么我会创建一个名为masterPage.master.cs的文件,还是一个完全不同的方式,或者甚至可以这样做?
所有对此问题的引用都解释了如何在Visual Studio中执行此操作,我不想使用它。
实际上,您可以创建ASP.NET WebForms页面,而无需显式编译.cs文件。
<%@ Page Src="Home.aspx.cs" Inherits="HomePage" AutoEventWireup="True" %>
请注意, @ Page指令使用Src
属性而不是通常的CodeBehind
属性。
(而不是Src
,您也可以使用CodeFile
属性并将代码隐藏类标记为partial
。)
using System;
using System.Web.UI;
public class HomePage : Page
{
protected void Page_Load(object sender, EventArgs e)
{
Response.Write("LOAD");
Response.End();
}
}
<%@ Master Src="masterPage.master.cs" Inherits="MasterPage" AutoEventWireup="True" %>
同样的事情,除了你使用@ Master指令而不是@Page。
(同样,您可以使用CodeFile
属性代替Src
,并将代码隐藏类标记为partial
。)
public class MasterPage : System.Web.UI.MasterPage
{
}
(我将代码隐藏类MasterPage
命名为与您的文件名匹配,但为了避免与内置的ASP.NET MasterPage
基类混淆,您可能希望选择其他名称。)
asp.net应用程序中的.aspx,.js和.html文件不需要任何编译,但C#是编译语言,因此需要编译每个.cs文件。 您可以使用某些编译器或VS命令提示符。 看看这些链接:
https://msdn.microsoft.com/en-us/library/ms229859%28v=vs.110%29.aspx
https://msdn.microsoft.com/en-us/library/78f4aasd.aspx
https://kencenerelli.wordpress.com/2014/03/08/using-notepad-to-write-c-code/
通过向页面添加CodeFile链接,如下所示:
<%@ Page Language="C#" MasterPageFile="~/MasterPage/MasterPage.master" CodeFile="Home.aspx.cs" Inherits="Home" Title="Content Page"%>
并确保存在inhereits标记,没有必要编译代码。
所以这是正确的答案
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.