Mic*_*ins 2 c# msbuild mono xbuild monodevelop
有一个问题,编译一些使用的代码HttpContextBase抛出编译错误:
UserService.cs(13,26): error CS0433: The imported type `System.Web.HttpContextBase' is defined multiple times
Run Code Online (Sandbox Code Playgroud)
违规行是:
private readonly HttpContextBase httpContext;
Run Code Online (Sandbox Code Playgroud)
如果我取出该行代码或对其进行注释,则错误消失并且汇编编译.
在另一个项目(此项目的测试项目)中,尝试声明HttpContextBase传递给此对象的构造函数时会发生相同的错误.所以它似乎是一个跨项目的问题.
这是项目文件问题吗?(System.Web在那里找不到多个引用).它是在我对AfterBuild步骤进行一些更改之前编译的,所以我担心我在csproj文件中弄乱了一些东西.
这是使用Mono 2.10.1构建的,使用monodevelop trunk构建集来使用xbuild进行编译.
使用默认的Monodevelop构建行为进行编译不会产生此错误.
类型System.Web.HttpContextBase在.NET 3.5 SP1中的System.Web.Abstractions.dll中定义,但在.NET 4.0中的System.Web.dll中定义.这意味着编译的dll引用System.Web.Abstractions.dll中的类型将被"类型转发"到System.Web.dll.
您似乎在/Users/shimms/Development/convergence/lib/System.Web.Abstractions.dll(可能是.NET 3.5版本)中有System.Web.Abstractions.dll的本地副本,它可能与4.0系统冲突. Web.dll.
| 归档时间: |
|
| 查看次数: |
13726 次 |
| 最近记录: |