![](/img/trans.png)
[英]Warning “The type X in Y.cs conflicts with the imported type X in Z.dll”
[英]The type X conflicts with imported type X
在实体框架(数据库优先)中,我试图向创建的类添加一些数据注释。
一般来说:我创建了类X:
namespace Info
{
using System;
using System.Collections.Generic;
public partial class X
{
public string SomeProperty {get; set;}
...
}
}
我想物业SomeProperty
在序列化到JSON时,从而忽视App_Code/Metadata
创建一流X.cs和我添加一些元数据:
namespace Info
{
public class XMetaData
{
[JsonIgnore]
public string SomeProperty{get; set;}
}
[MetadataType(typeof(XMetaData))]
public partial class X
{
}
}
上面我手动将名称空间从Info.App_Code.Metadata
更改为Info
以使部分类匹配。
但是在我使用X类的所有地方我都有警告
The type Info.X in '.../Info/App_Code/Metadata/X.cs ' conflicts with the imported type Info.X in '.../Info/X.cs'. Using the type defined in '.../Info/App_Code/Metadata/X.cs '
我期望两个部分类都将被合并,但是所有出现都是指那个空的X类。
有人知道我错过了什么吗?
根据您正在开发的应用程序类型,将代码放在App_Code文件夹中可能是错误的,因为它对内容有一定的影响。 看到这个其他问题 。
尝试将源文件移出App_Code,并确保它们的“构建操作”在属性窗口中为“已编译”。
删除项目bin文件夹,清理并重建项目
我遇到过同样的问题。 能够用2种方法解决这个问题。 1.重命名App_Code文件夹2.将.cs文件移动到项目的根目录中。
两种方法都有效。
在我的情况下,我通过在APP_Code文件夹中创建一个子文件夹来解决这个问题。 在那里移动了源代码。 深入添加了命名空间。 清洁和构建,现在一切正常。
尝试检查.aspx页面是否与类(.cs)文件同名。
示例:如果文件是Guy.aspx而类文件是Guy.cs,则这些文件会发生冲突。
检查.aspx文件的第一行,如果它是Inherits =“Guy”,那么就会发生冲突。 如果已经创建了Guy.aspx.cs文件,请不要忘记更改它,您需要更改公共部分类。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.