所以,我尝试运行一个带有NHibernate和FluentNHibernate的ASP.NET MVC5,目标是使用Visual Studio2015 for Mac and XSP Webserver的SQL Server2012,但失败了,异常如下。我使用的是.NET Framework4.5,包被更新到最新版本。
System.ArgumentNullException
Value cannot be null.
Parameter name: type
Description: HTTP 500.Error processing request.
Details: Non-web exception. Exception origin (name of application or object): System.Core.
Exception stack trace:
at System.Dynamic.Utils.ContractUtils.RequiresNotNull (System.Object value, System.String paramName) [0x00003] in /private/tmp/source-mono-2017-02/bockbuild-2017-02/profiles/mono-mac-xamarin/build-root/mono-x86/external/corefx/src/Common/src/System/Dynamic/Utils/ContractUtils.cs:67
at System.Linq.Expressions.Expression.Convert (System.Linq.Expressions.Expression expression, System.Type type, System.Reflection.MethodInfo method) [0x0000b] in /private/tmp/source-mono-2017-02/bockbuild-2017-02/profiles/mono-mac-xamarin/build-root/mono-x86/external/corefx/src/System.Linq.Expressions/src/System/Linq/Expressions/UnaryExpression.cs:780
at System.Linq.Expressions.Expression.Convert (System.Linq.Expressions.Expression expression, System.Type type) [0x00000] in /private/tmp/source-mono-2017-02/bockbuild-2017-02/profiles/mono-mac-xamarin/build-root/mono-x86/external/corefx/src/System.Linq.Expressions/src/System/Linq/Expressions/UnaryExpression.cs:763
at NHibernate.Util.DelegateHelper.BuildPropertySetter[T] (System.Type type, System.String propertyName) [0x00015] in <1c5d1dfd6b734554b068885679d8b49d>:0
at NHibernate.AdoNet.SqlClientSqlCommandSet..cctor () [0x00019] in <1c5d1dfd6b734554b068885679d8b49d>:0 也许这是一个NHibernate或FluentNHibernate错误?
发布于 2017-10-06 00:06:39
我想我找到了一个解决方案。由于bug或其他原因,我们需要将数据库配置为批处理大小为零,以避免此异常:
return Fluently.Configure()
.Database(MsSqlConfiguration.MsSql2012.ConnectionString(
x => x.FromConnectionStringWithKey("ConexaoBanco")).ShowSql())
.Mappings(m =>
m.FluentMappings.AddFromAssemblyOf<HomeController>())
.ExposeConfiguration(cfg => cfg.SetProperty("adonet.batch_size", "0"))
.BuildSessionFactory();我应该适当地信任这个解决方案的sta-blockhead:http://sta-blockhead.blogspot.com.br/2009/06/systemdatasqlclientsqlcommandset.html
https://stackoverflow.com/questions/45439946
复制相似问题