我正在創建一個ASP.Net MVC 5應用程序。在我的網站中,存在3種不同類型的用戶。具有不同功能的用戶
- 聯繫
- 普通用戶
- 餐廳
每個用戶都擁有自己的能力和訪問權限。意思是,每個人的觀點應該不同。
我已經創建了普通和餐廳的模型。我想知道如何修改我現有的結構來支持這個功能。
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; }
[Required]
public string UserName { get; set; }
[Required]
public string FirstName { get; set; }
[Required]
public string LastName { get; set; }
public string Phone { get; set; }
public string MobilePhone { get; set; }
[Required]
[DataType(DataType.EmailAddress)]
public string Email { get; set; }
public virtual IList<UserAddress> Addresses { get; set; }
}
public class Restaurant
{
[Key]
public int ID { get; set; }
[Required]
public string Name { get; set; }
public virtual IList<RestaurantAddress> Addresses { get; set; }
public virtual IList<RestaurantFood> Menu { get; set; }
public virtual IList<Review> Reviews { get; set; }
[DataType(DataType.Url)]
public string Website { get; set; }
[DataType(DataType.PhoneNumber)]
public string Phone { get; set; }
[DataType(DataType.PhoneNumber)]
public string Fax { get; set; }
[DataType(DataType.EmailAddress)]
public string Email { get; set; }
public int Seats { get; set; }
public double AverageRating { get; set; }
public double AveragePrice { get; set; }
}
[這](HTTP://www.dotnettips。方式/後/ 1166 /%D9%85%D8%AF%DB%8C D8%%B1%DB%8C D8%%%AA- D8%B3%D9%81%D8%A7%D8%B1%D8% B4%DB%8C-%D8%B3%D8%B7%D9%88%D8%AD-%D8%AF%D8%B3%D8%AA%D8%B1%D8%B3%DB%8C-%DA %A9%D8%A7%D8%B1%D8%A8%D8%B1%D8%A7%D9%86-%D8%AF%D8%B1-mvc)post有幫助 –
@SirwanAfifi謝謝。這在一定程度上有所幫助。我將不得不尋找更多。我的問題是:改變現有模型以增加對這種靈活性的支持的最佳方式是什麼?我應該將所有信息添加到「用戶」模型嗎?我應該將外鍵添加到「User」模型嗎?我想在模型中集成其他信息。 –
@AlirezaNoori我已經更新了我的答案,它可以告訴你如何執行它的確切細節。如果您可以花費大量時間來計算實施,則您不一定需要ASP安全套件。 –