简体   繁体   English

LINQ-无效的操作异常

[英]LINQ - Invalid Operation Exception

Please see the code below: 请参见下面的代码:

static MapperConfiguration config = new MapperConfiguration(cfg =>
        {
            cfg.CreateMap<DataObjects.Application, BusinessObjects.Application>();
        });

        public BusinessObjects.Application getApplication(string UserID)
        {
            using (CreditCardPreQualificationEntities CreditCardPreQualificationDatabase = new CreditCardPreQualificationEntities())
            {
                //DataObjects.Application application = CreditCardPreQualificationDatabase.Applications.FirstOrDefault(c => c.userID== UserID);
                BusinessObjects.Application application = CreditCardPreQualificationDatabase
                    .Applications
                    .ProjectTo<BusinessObjects.Application>(config)
                    .Where(c => c.UserID == UserID)
                    .ToList().Single();
                return application;
                //return new BusinessObjects.Application();
            }
        }

An invalidoperationexception is thrown because the user does not have any applications. 因为用户没有任何应用程序,所以引发了invalidoperationexception。 How can I handle this in the LINQ uqery? 如何在LINQ uqery中处理此问题?

You can replace .ToList().Single(); 您可以替换.ToList().Single(); with .FirstOrDefault(); 使用.FirstOrDefault(); . Then application will be null if not found. 如果找不到,则application将为null

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM