2

我的班级中有一个属性,我将其设为可选。唯一的问题是该属性正在使用 Guid 并且是标准要求。我不知道如何使它可以为空。

我试图完成的是扩展membershipprovider whit一个新表,组,并在组和用户之间建立一对多的链接。

物业:

public virtual Guid GroupId { get; set; }
public virtual Group Group { get; set; }

那么我怎样才能使 Guid 属性可以为空呢?

4

2 回答 2

5

实现它Nullable<Guid>,又名Guid?

public virtual Guid? GroupId { get; set; }

如果您之前没有在 C# 中遇到过可为空的值类型,您可能需要阅读它们

(顺便说一句,你真的需要属性是虚拟的吗?你期待不同的实现吗?)

于 2012-05-17T15:50:36.813 回答
0
Guid? 

应该工作得很好。

但我不认为这是你真正想要的,因为我理解正确你想要一个可选的关系?在这种情况下,您应该删除 GroupId 属性,使其成为可选关系。

第二个选项是使用如下标记关系:

modelBuilder.Entity<Bla>().HasOptional(g => g.Group).WithRequired();
于 2012-05-17T15:51:13.710 回答