【发布时间】:2015-10-06 09:55:56
【问题描述】:
我刚刚从 VS2013 升级到 VS2015,出现了大量 CS0436 警告,似乎都与同一个问题有关。
我正在慢慢地将 Web 应用程序从 VB 迁移到 C#,所以也许这真的很简单。我是 C# 新手,所以请使用外行类型的答案...
我的解决方案结构如下:
项目 1 - 可重用方法(数据库访问等)
\CommonDataAccessFunctionality.vb
Namespace MyCompany
Public Class CommonDataAccessFunctionality
Public Sub New(ByVal storedProcedureToRun As String)
' db stuff here '
End Sub
End Class
End Namespace
项目 2 - 依赖于项目 1 的 Web Applicable (C#)
App_Code\DataAccess.cs
using System.Data;
using System.Data.SqlClient;
namespace QrCodes.App_Data
{
public abstract class QrDataCommon : MyCompany.CommonDataAccessFunctionality
{
public QrDataCommon(string storedProcedureToRun)
: base(storedProcedureToRun)
{
}
}
public class QrDataGrabber : QrDataCommon
{
public QrDataGrabber(string storedProcedureToRun)
: base(storedProcedureToRun)
{
}
}
}
错误显示在这一行:
public class QrDataGrabber : QrDataCommon
警告 CS0436
'D:\Web\wwwroot\MyApp\MyApp-InProgress-Person 中的类型 'QrDataCommon' WebApi\QrCodes\App_Code\DataAccess.cs' 与导入的冲突 在“二维码”中键入“QrDataCommon”,版本=1.0.0.0,文化=中性, PublicKeyToken=null'。使用中定义的类型 'D:\Web\wwwroot\MyApp\MyApp-InProgress-Person WebApi\QrCodes\App_Code\DataAccess.cs'。
我在这里阅读了很多关于项目引用自身的帖子,但是,项目对话框中没有引用(列出的),项目 2 到项目 1 中只有一个依赖项。此外,项目 2 没有引用其他任何内容的控件等。
谁能给我一些指导?我不确定它是否有用,但在对象浏览器中搜索“QrDataCommon”时,我看到了这个:
目前根据帮助进行更新
如果我选择在解决方案资源管理器中查看所有文件,\bin\ 目录中有一个名为 QrCodes.dll 的文件,该文件是在构建项目/解决方案时创建的。我在隐藏的 Debug 文件夹中也看到了相同的内容。
如果我将 QrDataCommon 类重命名为完全独特的名称,例如 QrDataCommonTest123,然后清理/重建,错误会立即更新以使用新的类名。
因此,这可能与应用程序构建目标位置有关吗?
【问题讨论】:
标签: c# asp.net vb.net visual-studio visual-studio-2015