The*_*ask 35 .net c# types namespaces
我的项目的main.cs返回以下警告:
警告1"PATH\Extensions.cs"中的"Extensions.MessageDetails"类型与"path\lib.dll"中导入的类型"Extensions.MessageDetails"冲突.使用'path\Extensions.cs'中定义的类型.路径\ main.cs
我的项目有什么问题?如何摆脱警告?
我的项目代码具有以下结构:
Extensions.cs
namespace Extensions
{
public class MessageDetails
{
public string message { get; set; }
public string link { get; set; }
public string picture { get; set; }
public string name { get; set; }
public string caption { get; set; }
public string description { get; set; }
public string userid { get; set; }
public string username { get; set; }
public object actions { get; set; }
public object privacy { get; set; }
public object targeting { get; set; }
}
}
Run Code Online (Sandbox Code Playgroud)
lib.dll
namespace MyClassLib {
public class MyClassLibFoo {
public void foo(MessageDetails parameters) {
/* .. */
}
}
}
Run Code Online (Sandbox Code Playgroud)
main.cs
using MyClassLib;
using Extensions;
class Program
{
static void Main(string[] args)
{
MessageDetails md = new MessageDetails();
}
}
Run Code Online (Sandbox Code Playgroud)
Jam*_*ake 58
在我的例子中,使用Visual Studio 2013,我发现我的一个类库已经开发了一个对它自己的引用.我认为这是在我向我的解决方案添加新项目时发生的,或者它是一个错误,但无论哪种方式导致了这个问题.
检查项目参考是否有任何循环引用.
par*_*mar 31
它似乎Extensions.cs是构建lib.dll和你的main.exe的项目的一部分
从其中一个项目中删除它以解决此问题.
vap*_*guy 11
我有这样的问题,我已经从目标.NET Framework版本恢复4.5.2到4.0.
我的App_Code文件夹中的类具有在该文件夹中的其他类中调用方法的方法.当我创建一个名为"AppCode"的标准文件夹,并将我的类移入其中时,我不再遇到问题.
如果我重新创建"App_Code"文件夹并将我的类移回其中,我将再次遇到此问题.我确信它与我的.NET Framework版本有关,或者Visual Studio在最初构建/定位到另一个版本之后不能很好地改变它.