我正在使用代码第一种方法,基于模态和db上下文类创建数据库。问题是,当我在一个模型和下一个模型之间创建关系并运行代码时,数据库就会生成外键,就像它应该的那样。
我多么想要关系,没有外键。这可能与实体框架和代码第一种方法有关吗?
例如:
namespace LocApp.Models
{
public class Location
{
public int id { get; set; }
[Required]
public string name { get; set; }
[Required]
public string address { get; set; }
[Required]
public string city { get; set; }
[Required]
public string country { get; set; }
[Required]
public string province { get; set; }
[Required]
public string phone { get; set; }
public string fax { get; set; }
public bool active { get; set; }
public virtual ICollection<LocationAssignment> LocationAssignment { get; set; }
}
}
与:
有关系namespace LocApp.Models
{
public class LocationAssignment
{
public int id { get; set; }
public int locationID { get; set; }
public int serviceID { get; set; }
public int productID { get; set; }
public int personID { get; set; }
public virtual Location Location { get; set; }
public virtual Service Service { get; set; }
public virtual Product product { get; set; }
public virtual Person person { get; set; }
}
}
如您所见,此表将具有使用位置表生成的外键。如何保持这种关系 WITH OUT 生成外键?
答案 0 :(得分:0)
用户触发器插入和更新并删除相对和参考表!!!但这不可爱,你必须控制应用程序中的所有东西