Я просмотрел несколько похожих постов на эту тему и не совсем нашел то, что искал, поэтому объясню, что я делаю, и проблему, с которой я работаю.
У меня есть приложение MVC3 и библиотека классов, в которой хранятся данные моей модели. Например, мой проект модели домена имеет класс CLUser здесь:
public class CLUser
{
public int ID { get; set; }
[Display(Name = "User Name")]
[StringLength(50, ErrorMessage = Util.ERRORMESSAGE_STRING_LENGTH_50)]
public string UserName { get; set; }
public string Password { get; set; }
public DateTime PasswordExpiration { get; set; }
public bool LockedOut { get; set; }
public string LockedOutReason { get; set; }
[Display(Name = "Security Question")]
public string SecurityQuestion { get; set; }
[Display(Name = "Security Answer")]
public string SecurityAnswer { get; set; }
[Display(Name = "Current Status:")]
public int Standing { get; set; }
public int MerchantID { get; set; }
public int PartnerID { get; set; }
public DateTime CreatedDtTm { get; set; }
public DateTime UpdatedDtTm { get; set; }
public List<CLPermission> UserPerms { get; set; }
}
Затем у меня есть служба WCF, которая ссылается на тот же проект, который имеет модель CLUser. Так что в моем WCF у меня есть контракт на эксплуатацию под названием
[OperationContract]
GetUser(string userName, string password);
и, таким образом, выставляется в проекте MVC.
Так вот в чем проблема. Я хочу установить объект CLUser равным моему вызову службы WCF для GetUser. Который выглядит так:
ServiceClient MyService = new ServiceClient();
CLUser Usr = MyService.GetUser(userName, password);
Однако, когда я получаю сообщение об ошибке примерно так:
Невозможно неявно преобразовать тип Auth.CLUser в Auth.CLUser [C: \ .... \ Auth.DLL]
Если WCF и приложение MVC ссылаются на одну и ту же DLL, они не смогут использовать одни и те же объекты?