0
私はユニット・オブ・ワークでリッチ・モデルを実装しようとしています。ユニティ・オブ・ワーク+リッチ・ドメイン
public class User : BusinessBase, IUser
{
public int UserID { get; }
public string Name { get; set; }
public string LastName { get; set; }
public string Email { get; set; }
public string Password { get; set; }
public string Token { get; set; }
public DateTime SigninDate { get; set; }
public DateTime LastLogin { get; set; }
public User(IUnityOfWork uow) : base(uow)
{
}
public void Create(User user)
{
Name = user.Name;
LastName = user.LastName;
Email = user.Email;
Password = user.Password; //TODO HASH
Token = GetToken();
SigninDate = DateTime.Now;
LastLogin = DateTime.Now;
Uow.User.Add(this);
}
}
ビルドは正常に実行されますが、このクラスで作業ユニットはnullです。
私はこのクラスとのインターフェイスを持っています。
interface IUser: ICommitable
{
void Create(User user);
void Delete();
void EditName(string name);
void EditLastName(string lastName);
void EditEmail(string email);
void EditPassword(string password);
void GenerateToken();
string GetToken();
void UpdateLoginDate();
}
とUnityConfig.csで、私はタイプ
container.RegisterType<IUser, User>();
はなぜ作業単位が初期化されていないされていない、そしてどのように私はこの問題を解決することができます登録?
あなたは、コンテナと 'IUnityOfWork'を登録しましたか? – Nkosi
はい、container.RegisterType(); –