CodeFile与CodeBehind CodeFile和CodeBehind是ASP.NET中用于分离页面逻辑和代码的两种不同方式。 CodeFile方式是将页面的代码和逻辑保存在一个独立的文件中,该文件与页面文件(*.aspx)分离。代码文件使用相同的文件名,但扩展名为*.aspx.cs(C#代码)或*.aspx.vb(VB.NET代码)。通过将代码文件与页面文件关联起来,可以在开发过程中更好地组织和管理代码。 CodeBehind方式是将页面的代码和逻辑直接嵌入在页面文件(*.aspx)中。代

10 浏览
0 Comments

CodeFile与CodeBehind CodeFile和CodeBehind是ASP.NET中用于分离页面逻辑和代码的两种不同方式。 CodeFile方式是将页面的代码和逻辑保存在一个独立的文件中,该文件与页面文件(*.aspx)分离。代码文件使用相同的文件名,但扩展名为*.aspx.cs(C#代码)或*.aspx.vb(VB.NET代码)。通过将代码文件与页面文件关联起来,可以在开发过程中更好地组织和管理代码。 CodeBehind方式是将页面的代码和逻辑直接嵌入在页面文件(*.aspx)中。代

在声明ASP.NET用户控件时,CodeFile="file.ascx.cs"和CodeBehind="file.ascx.cs"之间有什么区别?

其中一个是更新或推荐的吗?还是它们有特定的用途?

0
0 Comments

CodeFile vs CodeBehind问题的出现原因是在编译和运行过程中的不同。在CodeBehind文件中,需要先进行编译才能运行,而在src中只需要保存文件即可运行。

要解决这个问题,可以采取以下方法之一:

1. 将CodeBehind文件转换为CodeFile文件,这样就可以在保存文件后立即运行。可以通过将in src改为in the CodeFile来实现。

2. 如果需要保留CodeBehind文件的特性,可以在保存文件后手动进行编译。可以使用相关的编译工具或命令来完成这一步骤。

无论采取哪种方法,重要的是要确保文件在运行前已经进行了必要的编译。这样可以确保代码在运行时能够正常执行,避免出现错误或异常。

通过理解CodeFile和CodeBehind之间的区别,并采取适当的解决方法,可以确保代码的正确运行。这样可以提高开发效率,并减少出现问题的可能性。

0
0 Comments

在使用Visual Studio Express 2012 For Web和.NET 4.0中的应用程序项目时,我遇到了一个问题。在我的登录和更改密码页面的代码后台文件中,我发现了一个需要同时使用CodeBehind和CodeFile声明的情况。

如果我不添加代码文件引用,如CodeFile=login.aspx.cs,网页将无法解析,并且浏览器会显示一个解析错误。无论我是否编译项目都没有关系。

如果我不添加代码后台引用,如CodeBehind=login.aspx.cs,对于安全类(如MembershipUser)的引用在编译时和尝试使用智能感知时都会失败,显示错误消息"找不到类型或命名空间MembershipUser"。我已经根据.NET 4.0框架的要求添加了对System.Web.ApplicationServices的引用。

我应该补充一点,这些有问题的文件在使用IIS应用程序工具创建的网站中运行。当我从Visual Studio打开网站时,我没有遇到解析错误或引用错误的困扰。只有当我在Visual Studio中将应用程序作为项目打开时才会出现这种困惑。

我知道你的意思,约翰。也许它值得被投票否决,但我目前真的在这个问题上苦苦挣扎。也许我的困难不是来自这个区别,而是来自其他方面。然而,尽管被接受的答案回答了问题,但它并没有解决我所面临的实际问题。也许我应该发起一个新的问题。

0
0 Comments

CodeFile vs CodeBehind问题的出现的原因是ASP.NET 1.1模型中需要编译,而编译后的二进制文件放置在网站的bin文件夹中。需要在Visual Studio中进行编译,然后部署。这是一种很好的模型,当你不希望源代码以纯文本形式可见时使用,例如在交付给客户时,你没有义务提供代码。

而CodeFile是你在解决方案中提供的源文件用于部署。ASP.NET 2.0运行时会在需要时编译代码。编译后的文件位于Microsoft.NET [.NET版本]\Temporary ASP.NET Files目录下。

那么,这是否意味着开发人员必须手动更改Page指令的属性,还是有一种方式可以在每次添加新的网页时自动选择CodeBehind或CodeFile呢?

我认为CodeFile是用于"WebSite",而CodeBehind是用于"Web Application Project",因为它需要编译。因此,在将"Website"转换为"Web Application Project"时,我们可能需要手动将所有的CodeFile出现改为CodeBehind!

在开发过程中,CodeFile很方便,因为你可以在保存并刷新页面后测试更改,而不必构建项目。如果你不喜欢将.cs和.vb文件提交到生产服务器上,你仍然可以选择将.NET 2+的CodeFile编译模型文件作为DLL发布。当你发布项目时,你可以选择"Precompile"选项,将.aspx文件和.cs/.vb文件中的一个或两个转换为DLL,就像CodeBehind一样。

正如renegadeMind指出的(从它得到的赞数来看),我认为应该对回答进行编辑,强调CodeFile与"website"类型的解决方案深深相连,而CodeBehind则与"web application project"相关联。不幸的是,我的编辑被拒绝了。

CodeBehind与ASP 1.1关联,而CodeFile与ASP.NET 2.0关联的事实可能导致人们认为CodeFile比CodeBehind"更高级",但实际上恰恰相反:web应用程序比网站更好。

0