在/ reference选项中未指定extern别名'xxx'

时间:2012-02-06 15:40:13

标签: c# .net assemblies

我正在尝试使用log4net.ThreadContext.Properties["subjectProperty"] = emailsubject 在我的项目中。

我有2个不同的项目1] Web - MVC 2]业务层。 1] WEB -MVc项目参考了Combres 2]业务层。引用了log4net(here i have extended SMTPAppender for dynamic email地址)

使用这两个程序集Combres和log4net。

**因此在运行时出现错误

  

Combres中存在重复引用,ThreadContext中存在log4Net

**

我已添加以下 extern 字以解决问题

Use the properties window to change the alias for the assembly from 'global' to 'MyAlias'

At the top of the file where the aliased assembly is used, put extern alias MyAlias. This must be before any using statements.

Use the alias prefix to use the namespace you want, for example using MyAlias::MyNamespace.

但我有错误

**

  

在/ reference选项

中未指定extern别名'xxx'

**

2 个答案:

答案 0 :(得分:1)

我发现在我的情况下,我使用别名来区分的解决方案中的2个程序集具有相同的实际dll名称,因此只有2个程序集中的1个存在。

重命名为

Interfaces.Beta1.dll

Interfaces.v1.dll

然后一切都恢复了! (并非他们两个被称为Interfaces.dll)

一旦我解决了这个问题,看起来很明显:)

答案 1 :(得分:-3)

将目标框架设置为.NET 4.5.1。