열 '아이디'에 의존 - Users
및 Categories
을 그들은 연결됩니다 UserID
에 있습니다.엔티티 프레임 워크 오류 : 개체 'PK_dbo.User은'나는이 개 테이블이 나는 5 이의 말을하자 <a href="http://www.windowsazure.com/en-us/develop/net/tutorials/web-site-with-sql-database/" rel="nofollow">ASP.NET MVC 5 tutorial</a>을 통과 MVC 기존 응용 프로그램을 다시 할
, 그래서 내가
public int UserID { get; set; }
public User User { get; set; }
내가 mvc3/EF4에 나를 위해 일한
을 추가 Category
모델도
public ICollection<Category> Categories { get; set; }
로 샘플을 User
모델을 업데이트 .
public class User : IUser
{
public User()
: this(String.Empty)
{
}
public User(string userName)
{
UserName = userName;
Id = Guid.NewGuid().ToString();
}
[Key]
public string Id { get; set; }
public string UserName { get; set; }
public ICollection<Category> Categories { get; set; }
}
분류 모델
(범주 샘플 프로젝트 + 링크 1-1)사용자 : 여기
내 모델입니다 : 내가 마이그레이션을 할 때 나는 오류를 얻고있다The object 'PK_dbo.User' is dependent on column 'Id'. ALTER TABLE ALTER COLUMN Id failed because one or more objects access this column.
public class Category
{
public int UserID { get; set; }
public User User { get; set; }
public int ID { get; set; }
public int ParentID { get; set; }
public string Name { get; set; }
//....
}
문맥
public class BackendDBContext : DbContext
{
public DbSet<User> Users { get; set; }
public DbSet<UserSecret> Secrets { get; set; }
public DbSet<UserLogin> UserLogins { get; set; }
public DbSet<Role> Roles { get; set; }
public DbSet<UserRole> UserRoles { get; set; }
public DbSet<Category> Categories { get; set; }
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
}
protected override DbEntityValidationResult ValidateEntity(DbEntityEntry entityEntry, IDictionary<object, object> items)
{
//
}
}
사용자의'Id' 속성이 문자열 인 경우 다른 클래스의'int UserID' 속성을 사용하여 어떻게 참조 할 수 있습니까? – hvd
나는 바보 야! 고맙습니다! –
답으로 추가하십시오, 그래서 받아 들일 수 있습니다. –