我要将ASP网站项目移植到Web应用程序项目中。我遇到了一个命名空间和一个我在任何地方都找不到的类型。我在工作正常的网站上检查了它们,每当我转到[F12]定义时,它们总是引用临时位置中的文件。位置为[C:\ Users \“用户名” \ AppData \ Local \ Temp \ MetadataAsSource \ e98d1328e8484b79bd026794a3eeb63e \ 536d6ba4484547879b395d3105ab2bf5
#region Assembly App_Web_wuctoolbarcustom.ascx.eeb48aa3.alvsygha, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
// C:\Users\"username"\AppData\Local\Temp\Temporary ASP.NET Files\root\f0bfb755\_shadow\bd9578ae\25500\App_Web_wuctoolbarcustom.ascx.eeb48aa3.alvsygha.dll
#endregion
using System.Diagnostics;
using System.Runtime.CompilerServices;
using JDQ.Controls;
namespace ASP
{
[CompilerGlobalScope]
public class jdqcontrols_wuctoolbarcustom_ascx : ToolbarCustom
{
[DebuggerNonUserCode]
public jdqcontrols_wuctoolbarcustom_ascx();
[DebuggerNonUserCode]
protected override void FrameworkInitialize();
}
}
由于找不到类型或名称空间的ASP,因此无法编译新的Web应用程序,而即使删除了临时位置中的元数据文件,旧的网站也可以成功编译。我想这个文件是通过某种方式生成的,我想知道如何为Web应用程序做同样的事情?
答案 0 :(得分:0)
我找到了。显然,他们在Web站点项目中调用用户控件的方式是使用ASP.namespace_control_ascx类型,并且由于在运行时编译了网站而在运行时生成了该类型,但是Web应用程序是预编译的,因此无法使用该类型。找不到。可以通过类名(就像您使用任何其他类型一样)简单地引用用户控件是方法(在网站上无法完成)。