我已经阅读了几篇关于 .Net Entity Framework 的文章,这些文章并没有让我想尝试一下。但现在我已经开始了一个小测试。
我建立了一个 MVC 3 网站,为我的家人处理经济交易,只是为了好玩。所以我设置了会员提供程序并让登录功能正常工作。通常,我在列中使用 Membership Guid 来向特定用户标识每一行。
我在我的项目中设置了这个类:
namespace mEconomy.Models
{
public class Transaction
{
public Guid UserID { get; set; }
public int TransactionID { get; set; }
public DateTime Date { get; set; }
public string Text { get; set; }
public string Category { get; set; }
public decimal Amount { get; set; }
}
public class TransactionDBContext : DbContext
{
public DbSet<Transaction> Transactions { get; set; }
}
}
工作正常,但我得到了所有用户的信息。如果用户 A 登录并创建一些事务,则用户 B 可以创建一个帐户并查看它们。这里的最佳做法是什么?如何保持用户数据分离?
我什至尝试将 UserID 设置为私有,如下所示:
private Guid UserID = (Guid)Membership.GetUser().ProviderUserKey;
但这根本不起作用。