值不能为空。参数名称:来源

浏览:49日期:2024-01-17
如何解决值不能为空。参数名称:来源?

我前一段时间有这个,答案不一定是您期望的。当您的连接字符串错误时,通常会出现此错误消息。

大概,您需要这样的东西:

<connectionStrings> <add name='hublisherEntities' connectionString='Data Source=localhost;Initial Catalog=hublisher;Integrated Security=True;' providerName='System.Data.sqlClient' /></connectionStrings><entityFramework> <defaultConnectionFactory type='System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework'><parameters> <parameter value='Data Source=localhost;Initial Catalog=hublisher;Integrated Security=True' /></parameters> </defaultConnectionFactory></entityFramework>

发生的事情是它在错误的位置寻找数据源。实体框架对它的指定稍有不同。如果您发布连接字符串和EF配置,那么我们可以进行检查。

解决方法

这很可能是我浪费了很长时间解决的时间浪费最大的问题。

var db = new hublisherEntities();establishment_brands est = new establishment_brands();est.brand_id = 1;est.establishment_id = 1;est.price = collection['price'];est.size = collection['size'];db.establishment_brands.Add(est);db.SaveChanges();

这给我一个错误

值不能为空。参数名称:来源

的堆栈跟踪

[ArgumentNullException:值不能为null。参数名称:source]System.Linq.Enumerable.Any(IEnumerable 1 source,Func2谓词)+4083335System.Data.Entity.Internal.InternalContext.WrapUpdateException(UpdateExceptionupdateException)+87 System.Data.Entity.Internal.InternalContext.SaveChanges()+ 193 System.Data.Entity.Internal.LazyInternalContext.SaveChanges()+33 System.Data.Entity.DbContext.SaveChanges()+20 … …

我只想向表添加一个实体。ORM是EF。

相关文章: