日期:2014-05-17  浏览次数:20506 次

.net 预编译 提示中导入的类型 冲突
我在用aspnet_complier.exe预编译程序的时候出现以下警告
f:\Woring\1111\EarlyWarning.cs
(201): warning CS0436: “d:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary
 ASP.NET Files\2222\f476bcba\f056d135\App_Code.2.cs”中的类型“ITMS.WebUI.MyS
endEmail”与“d:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Fi
les\2222\f476bcba\f056d135\assembly\dl3\77d869ee\478e8507_8bc4c901\ITMS.WebUI
.DLL”中导入的类型“ITMS.WebUI.MySendEmail”冲突。请使用“d:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\2222\f476bcba\f056d135\App_Code.2.cs”中定义的类型。

倒置编译完成后 , 我有的文件没有被预编译进去,访问页面的时候提示

“/”应用程序中的服务器错误。
--------------------------------------------

未预编译文件“/Report/xxxx.aspx”,因此不能请求该文件。 
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 

异常详细信息: System.Web.HttpException: 未预编译文件“/Report/xxxx.aspx”,因此不能请求该文件。

源错误: 

执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。  

堆栈跟踪: 


[HttpException (0x80004005): 未预编译文件“/Report/R_OrderReleaseQuery.aspx”,因此不能请求该文件。]
  System.Web.Compilation.BuildManager.GetVPathBuildResultInternal(VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile) +8759742
  System.Web.Compilation.BuildManager.GetVPathBuildResultWithNoAssert(HttpContext context, VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile) +101
  System.Web.Compilation.BuildManager.GetVirtualPathObjectFactory(VirtualPath virtualPath, HttpContext context, Boolean allowCrossApp, Boolean noAssert) +126
  System.Web.Compilation.BuildManager.CreateInstanceFromVirtualPath(VirtualPath virtualPath, Type requiredBaseType, HttpContext context, Boolean allowCrossApp, Boolean noAssert) +62
  System.Web.UI.PageHandlerFactory.GetHandlerHelper(HttpContext context, String requestType, VirtualPath virtualPath, String physicalPath) +33
  System.Web.UI.PageHandlerFactory.System.Web.IHttpHandlerFactory2.GetHandler(HttpContext context, String requestType, VirtualPath virtualPath, String physicalPath) +40
  System.Web.HttpApplication.MapHttpHandler(HttpContext context, String requestType, VirtualPath path, String pathTranslated, Boolean useAppConfig) +160
  System.Web.MapHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +93
  System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +155

 


--------------------------------------------


------解决方案--------------------
帮顶下,没大看明白。
------解决方案--------------------
把Temporary 
ASP.NET Files中的文件都删除试一试。
------解决方案--------------------
出现这种情况好像都是因为文件名或者文件路径发生了变化导致的,你重新删除下编译生成的临时文件看看。
------解决方案--------------------
未对项目进行引用或者控件未注册,丢失对相应DLL文件的引用。
在解决方案里点击右键---〉添加引用----〉 
也可以在工具像里面添加 添加选项卡-----------> 选择项,找到文件。
页面后台文件添加using命名空间,然后就可以直接调用了。 
如果是自定义控件的话,在页面register或者在web.config中注册一下,然后就可以象系统的控件一样调用了。
DLL文件本身问题 
把DLL控件项目的AssemblyInfo.cs当中的AssemblyCulture留空。
重新生成网站,更新引用文件
------解决方案--------------------
你把C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files下面的文件全部清除。然后重新打开一下你的程序,然后再生成一下试试。
------解决方案--------------------
把MySendEmail.aspx中的CodeFile="MySendEmail.aspx.cs"改为CodeBehind="MySendEmail.aspx.cs"
------解决方案--------------------