Sql server 将不可为null的导航属性转换为左联接的Linq查询
我有以下linq查询(false和true是因为动态创建查询): 我尝试添加元数据,但没有任何区别Sql server 将不可为null的导航属性转换为左联接的Linq查询,sql-server,entity-framework-6,Sql Server,Entity Framework 6,我有以下linq查询(false和true是因为动态创建查询): 我尝试添加元数据,但没有任何区别 [MetadataType(typeof(PersonViewMetaData))] public partial class PersonView { } public sealed class PersonViewMetaData { [Required] public Person Person { get; set; } } 你能为PersonView发布你的EF课程吗?你
[MetadataType(typeof(PersonViewMetaData))]
public partial class PersonView
{ }
public sealed class PersonViewMetaData
{
[Required]
public Person Person { get; set; }
}
你能为
PersonView
发布你的EF课程吗?你能为PersonView
发布你的EF课程吗?你能为PersonView
发布你的EF课程吗?
SELECT
[Distinct1].[PersonID] AS [PersonID]
FROM ( SELECT DISTINCT
[Extent1].[PersonID] AS [PersonID]
FROM (SELECT
[PersonView].[PersonID] AS [PersonID],
[PersonView].[DateTime] AS [DateTime],
[PersonView].[Info] AS [Info]
FROM [core].[PersonView] AS [PersonView]) AS [Extent1]
LEFT OUTER JOIN [core].[Persons] AS [Extent2] ON [Extent1].[PersonID] = [Extent2].[PersonID]
WHERE ([Extent1].[Info] = 1) AND ([Extent2].[FirstName] IN (@p__linq__0,@p__linq__1,N'') OR [Extent2].[FirstName] IS NULL) AND ([Extent1].[DateTime] >= @p__linq__2) AND ([Extent1].[DateTime] <= @p__linq__3)
) AS [Distinct1]
public partial class PersonView: DbEntity
{
private int _personID;
private System.DateTime _dateTime;
private bool _info;
public int PersonID { get{ return _personID;} set{ _personID = value; OnPropertyChanged("PersonID");} }
public System.DateTime DateTime { get{ return _dateTime;} set{ _dateTime = value; OnPropertyChanged("DateTime");} }
public bool Info{ get{ return _info;} set{ _info = value; OnPropertyChanged("Info");} }
public virtual Person Person { get; set; }
}
[MetadataType(typeof(PersonViewMetaData))]
public partial class PersonView
{ }
public sealed class PersonViewMetaData
{
[Required]
public Person Person { get; set; }
}