モデルにSqlGeographyを追加しようとしましたが、create tableを呼び出すと、奇妙なエラーが発生しました。
まず、このパッケージを追加します。 Microsoft.SqlServer.Types
次に、以下の例のようなモデルを作成します。
public class Locations
{
public int Id { get; set; }
public string Name { get; set; }
public SqlGeography Location { get; set; }
}
次に、呼び出しCreateTableIfNotExists
てテーブルを作成します
private void CheckDB(IDbConnectionFactory dbConnectionFactory)
{
using (var db = dbConnectionFactory.Open())
{
db.CreateTableIfNotExists<Models.Entities.DbIpEntity>();
}
}
そして最後に私はこのエラーを受け取りました:
System.TypeLoadException HResult = 0x80131522メッセージ=アセンブリ 'System.Data、Version = 4.0.0.0、Culture = neutral、PublicKeyToken = b77a5c561934e089'からタイプ 'Microsoft.SqlServer.Server.IBinarySerialize'を読み込めませんでした。Source = System.Private.CoreLib
StackTrace:at System.Signature.GetSignature(Void * pCorSig、Int32 cCorSig、RuntimeFieldHandleInternal fieldHandle、IRuntimeMethodInfo methodHandle、RuntimeType declaringType)at System.Reflection.RuntimeMethodInfo.FetchNonReturnParameters()at System.Reflection.RuntimeMethodInfo.GetParametersNoCopy()at RuntimePropertyInfo.GetIndexParametersNoCopy()at System.Reflection.RuntimePropertyInfo.GetIndexParameters()at ServiceStack.OrmLite.OrmLiteConfigExtensions.GetModelDefinition(Type modelType)at ServiceStack.OrmLite.OrmLiteWriteCommandExtensions.CreateTable(IDbCommand dbCmd、Boolean override、Type modelType)atServiceStack.OrmLite。 GeoApi.AppHostのServiceStack.OrmLite.OrmLiteSchemaApi.DropAndCreateTable [T](IDbConnection dbConn)のOrmLiteExecFilter.Exec [T](IDbConnection dbConn、Func`2フィルター)。CheckDB(IDbConnectionFactory dbConnectionFactory)in E:\ Projects \ Geo \ AppHost.cs:line 48 at GeoApi.AppHost.Configure(Container container)in E:\ Projects \ Geo \ AppHost.cs:line 40 at ServiceStack.ServiceStackHost.Init( )E:\ Projects \ Geo \ Startup.cs:line 49のGeoApi.Startup.Configure(IApplicationBuilder app、IHostingEnvironment env)のServiceStack.NetCoreAppHostExtensions.UseServiceStack(IApplicationBuilder app、AppHostBase appHost)
このエラーで、.NetCoreSystem.Data, Version=4.0.0.0
ではなく.NetFrameworkアセンブリ()を探していることに気付きました
ServiceStack.OrmLite.SqlServer.ConvertersとMicrosoft.SqlServer.TypesSqlGeography
それを実行するために、.NET V4.5の最小値を必要としないことができるように定義されているが、.NET V4.5および.NET V4.0それぞれのためにのみ利用可能です.NETCoreで使用されます。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加