The Mask The Mask - 3 days ago 6
C# Question

Warning “The type X in Y.cs conflicts with the imported type X in Z.dll”

The main.cs of my project returns the following warning:


Warning 1 The type 'Extensions.MessageDetails' in 'PATH\Extensions.cs' conflicts with the imported type 'Extensions.MessageDetails' in 'path\lib.dll'. Using the type defined in 'path\Extensions.cs'. path\main.cs


What is wrong with my project? How to get rid of the warning?

The code of my project has the following structure:

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; }
}

}


lib.dll

namespace MyClassLib {

public class MyClassLibFoo {
public void foo(MessageDetails parameters) {
/* .. */
}
}

}


main.cs

using MyClassLib;
using Extensions;

class Program
{
static void Main(string[] args)
{
MessageDetails md = new MessageDetails();
}
}

Answer

It seems like Extensions.cs is both part of the project that builds lib.dll and your main.exe

Remove it from one to fix this issue.

Comments