1

我有一个网站没有使用 App_Code 文件夹来 jit 编译代码文件(这就是 App_code 的用途,对吧?)。相反,开发人员必须要么将页面所需的所有必要类塞入代码文件中,要么塞入获取页面上的 Assembly Directive src 的单个 .cs 文件(这是因为源文件之间的依赖关系)。

有没有办法将相互依赖的类放在单独的文件中?

例如 Presenter.cs 依赖于 Model.cs。我想在我的 Presenter.cs 页面中添加一个程序集指令,并让它快乐。但由于这不能编译 Model.cs,所以它不起作用。为这两个代码文件添加程序集引用也不起作用。

有没有我遗漏的机制?

编辑:我认为答案是 App_Code 文件夹正是为此任务创建的,并且没有其他/更好的方法可以做到这一点。

4

1 回答 1

0

当您说“CodeBehind”时,您实际上指的是“CodeFile”吗?(我不喜欢“ASP.NET 网站”并且更喜欢 MVC 的众多原因之一)。

AFAIK,ASP.NET 运行时将所有 App_Code 文件一起编译到它们自己的程序集中,但是每个页面的 CodeFile(而不是它们的 CodeBehind)中的代码只能引用这个匿名程序集,而不能引用彼此的代码。

你能澄清你所说的“页面汇编参考”是什么意思吗?您是在做<%@ Assembly %>还是您的意思是命名空间导入<%@ Import %>(因为正如我所说,很多代码都被编译成匿名程序集)。

我建议您只需将公共代码和类移动到 App_Code 中的 *.cs 文件。它应该可以工作。

于 2012-06-14T21:30:29.303 回答