C# 列为空的条件为的Linq查询记录
我有一个参考表,其中包含要参考的值。我的主键是第一列,但我还将检查该键是否存在异常。我的桌子:C# 列为空的条件为的Linq查询记录,c#,linq,C#,Linq,我有一个参考表,其中包含要参考的值。我的主键是第一列,但我还将检查该键是否存在异常。我的桌子: StudentID ExceptionlalRecord Other Details --------- ------------------ ------------- Student1 null BlaBla Student2 null BlaBla Student1 123
StudentID ExceptionlalRecord Other Details
--------- ------------------ -------------
Student1 null BlaBla
Student2 null BlaBla
Student1 123 BlaBla
该表没有主键(首先是数据库),在设计模型期间,我将StudentID和exceptionalRecord主键都设置为null,但列的属性中的值为false
我想做的是在正常的请求过程中获取没有异常记录的学生&如果提供返回学生有异常记录,这将为我提供不同的其他详细信息列数据
QueryStudentId=ProvidedByRequest;
QueryExceptionalRecord=ProvidedByRequest;
if(db.StudentTable.where(x=> x.StudentId == QueryStudentId && x.ExceptionlalRecord ==QueryExceptionalRecord ).Count() > 0)
retrun db.StudentTable.where(x=> x.StudentId == QueryStudentId && x.ExceptionlalRecord == QueryExceptionalRecord);
else
return db.StudentTable.where(x=> x.StudentId == QueryStudentId && x.ExceptionlalRecord == null);
else部分没有返回任何数据,我在解决方案中使用Oracle数据库作为数据源和实体框架。有人能告诉我我做错了什么吗?您使用的是实体框架吗?这完全取决于您使用的linq驱动程序和使用的db。您需要澄清这些是什么。是的,我提到我正在使用oracle DBMS,我也将添加EF,谢谢。如果您试图在未定义主键的情况下将表伪造到EF中,那么您将遇到问题。你真的应该首先修复数据库。是的,但我没有权限这样做,这也不可能,因为我不是唯一一个引用它的人。那么EF可能不适合你的目的。也许试试整洁?