2016-05-13 10 views
0

私は間違ったテーブル名を見ているので、私たちのアプリケーションに問題がある顧客があります。Entity Frameworkのデータアノテーションは異なる言語の[Table( "")]で機能しませんか?

私たちはあなたのデータベースに「Users」という名前のUsersテーブルを持っていました。新しいバージョンでは、このテーブルを "cp_Users"に変更しました。私たちは、クラスの[表(「cp_Users」)]属性を入れて、テーブルの名前を変更するには、移行を更新:

[Table("cp_Users")] 
    public partial class Users 
    { 

RenameTable(name: "dbo.Users", newName: "cp_Users"); 

今すぐ私の環境とこれらの他の2つの環境間の唯一の違いは言語です。私のシステムは英語で、システムはスウェーデン語です(SQLはFinnish_Swedish_CI_ASです)

私はこれを間違っているか、これはバグかもしれませんか?なぜ彼らのコードは "cp_Users"ではなく "Users"テーブルを探しますか

+0

私はそれが部分的に働いていることがわかった。何が起きているのですか?cp_UsersテーブルからREADできますが、db.SaveChanges()が呼び出されたときに、 "cp_Users"の代わりに "Users"テーブルが検索されています – Jacob

+0

問題データベースのコピーを取得し、英語のシステムであり、問​​題はないようです。しかし、それはまったく異なるシステム(同じデータベース)だったので、それは文化ではないかもしれません...ちょうど私がトラブルシューティング中に見つけたものを述べています。 – Jacob

答えて

0

私はそれを理解してしまい、Entityとは何の関係もありませんでした。私は、まだ古いテーブル名を指していたテーブルの上に古いトリガーが残っていることを知りました。

エンティティは、テーブルを更新するときに、トリガーエラーが発生する可能性があります。

関連する問題