我有数据如果我linq查询该数据将获取数据或为null,并设置为viewmodel。 如果数据为null或没有数据,则mvc得到错误“对象引用未设置为对象的实例”]
我在linq查询时的代码
var dpas = (from d in db.komputer
join b in db.vga on d.komputerid equals (long?)b.komputerid
where d.komputername == id
select new detail_t_komputer
{
komputer = d.komputer,
komputername= d.komputername,
vga= d.vga,
}).DefaultIfEmpty();
我的视图模型
var ViewModel = new KomputerVM
{
detail_t_komputer= dpas
};
public class KomputerVM
{
public IQueryable<detail_t_komputer> detail_t_komputer{ get; set; }
}
我的数据库使用MS Sql并使用mvc 5.2.7]
为什么要在KomputerVM类中使用IQueryable?
class Program
{
static void Main(string[] args)
{
List<myBigClass> myList = new List<myBigClass>
{
new myBigClass() {name = "Pippo", surname = "Poppo"},
new myBigClass() { name = "Pluto", surname = "Ploto"}
};
var dpas = (from d in myList
where d.surname == "Ploto"
select new myfindclass
{
name = d.name,
myflag = true
}).DefaultIfEmpty();
var ViewModel = new myClass
{
myvar = dpas
};
}
public class myClass
{
public IEnumerable<myfindclass> myvar;
}
}
public class myfindclass
{
public string name { get; set; }
public bool myflag { get; set; }
}
public class myBigClass
{
public string name { get; set; }
public string surname { get; set; }
}