2011-11-15 14 views
0

サーバーからモデルをダウンロードしました。コードまたはエンティティフレームワークの変更なしで、私の デスクトップで完全に動作します。ここでは、私のWebサービスのサーバーバージョンから取得している 新しいエラーです:asp.net 4.0 Webサービスがサーバー上で動作していません。誰でもコードを校正できますか?

System.Data.MappingException:指定されたスキーマが無効です。エラー:

NightRiseModel.msl(143,12):エラー2019:指定されたメンバマッピングが で無効です。タイプタイプ ' Edm.DateTimeOffset [NULL可能=偽、のDefaultValue =精密=]メンバー' ' User_Events_Timestampの' ' 'がMySql.timestamp [NULL可能=偽、のDefaultValue =、と互換性がない ' nightriseModel.user_eventsタイプ '部材User_Events_Timestamp 'の精度= 0] ' ' ' nightriseModel.Store.user_events。

NightRiseModel.msl(172,12):エラー2019:指定されたメンバマッピングが で無効です。タイプ ' Edm.DateTimeOffset [真NULL可能=、のDefaultValue =、精密=]タイプのメンバー' ' User_Create_Dateの' が ' ' nightriseModel.userがTrue ' MySql.timestamp [NULL可能=と互換性がない、のDefaultValue =精度= 0] 'の のメンバー'のユーザー作成日付'のタイプ ' nightriseModel.Store.users '。 System.Data.Metadata.Edm.MetadataCache.StoreMetadataEntry.LoadStoreCollection(EdmItemCollection edmItemCollection、でSystem.Data.Mapping.StorageMappingItemCollection.Init(EdmItemCollection edmCollection、StoreItemCollection storeCollection、IEnumerableを1 xmlReaders, List 1ファイルパス、ブールthrowOnError)

で MetadataArtifactLoaderローダ)System.Data.Metadata.Edm.MetadataCache.LoadItemCollection [T]で

(IItemCollectionLoader`1 itemCollectionLoader、System.Data.Metadata.Edm.MetaにおけるTエントリー)

System.Data.EntityClient.EntityConnection.LoadStoreItemCollectionsでdataCache.GetOrCreateStoreAndMappingItemCollections(文字列 cacheKey、MetadataArtifactLoaderローダ、EdmItemCollection edmItemCollection、& entryTokenオブジェクト)

(MetadataWorkspace ワークスペース、たDbConnection storeConnection、DbProviderFactory工場、 DbConnectionOptionsのconnectionOptions、EdmItemCollection (メタデータアーティファクト、メタデータ、メタデータ、メタデータ、メタデータ、メタデータ、メタデータなど)

at System.Data.EntityClient.EntityConnection.GetMetadataWorkspace(ブール initializeAllCollections)

at System.Data.EntityClient.EntityConnectionSystem.Data.Objects.ObjectContext.EnsureConnectionでSystem.Data.EntityClient.EntityConnection.OpenでInitializeMetadata(たDbConnection newConnectionと、たDbConnection originalConnection、ブール closeOriginalConnectionOnFailure)

()

()

でSystem.Data.Objects.ObjectQuery`1.System.Collections.Generic.IEnumerable.GetEnumeratorでSystem.Data.Objects.ObjectQuery 1.GetResults(Nullable 1 forMergeOption)

()

System.Linq.Enumerable.FirstOrDefault [TSOURCE(IEnumerable`1源)System.Linq.Queryable.FirstOrDefault [TSOURCE(IQueryable`1源)で

NightRiseService.Authenticationで

。 [パスが削除されました]のログイン(文字列UID、文字列 パスワード)¥authentication.asmx.cs:行29

+0

質問を書式設定してください(特にコード) –

答えて

1

MySqlプロバイダのようなサウンドは正しくインストールされていません。それはひどく遠くに引かれていない、それは少しpersnicketyであることが知られています。私は、EFスタートアップメッセージの私の経験は、彼らがしばしば実際の近位の本当の例外を食べることができるということです。これは、悪いユーザー/パスや誤ったキーのあるサーバーアドレスのようないくつかの理由でMySqlConnectionを開くことができなかったと不平を言う可能性があります。

私はアプリケーションに適切なバイナリを含めることをお勧めします。私はまた、インストールされているものとインストールされていないものを識別できる、より良い計装されたスタートアップを手がけています。 EFプロバイダを結ぶための簡単なmysql接続を開始することから始めるなど、遅くて組織的である必要があります。

+0

どうすればサーバー上で実行できますか?開発者ツールはインストールされていませんか?申し訳ありませんが、それは無知に思えるかもしれませんが、これはmySQLとエンティティフレームワークを使った私の最初の展開です。 – Marlon

+0

手順を歩むアプリケーションにデバッグページを追加します。つまり、まずmysql接続を開いて閉じようとしていて、それが成功すれば成功を報告します。第二に、EFの文脈を新しくしようとし、成否を報告します。最後に、実際にはいくつかのデータを選択し、エラーが発生していないことを確認します。 –

0

これは古いスレッドかもしれませんが、解決策を見つけましたが、誰にでもこの問題が再実行されます。

私はちょうど同じ問題を抱えていました。私のローカルマシン上のMySQLコネクタは、サーバ上のMySQLコネクタとは異なっていました。ローカルには働いていましたが、サーバーに公開していませんでした。

サーバを新しいMySQLコネクタにアップグレードした後、すべて正常に機能しました。

関連する問題