質問

これは私にはあまり意味がありません。データベーステーブルまたはビュー列の亜音色のオブジェクトを生成すると、columnxに名前が変更されたときに、最近2回発生しました。列名が値であるため、C#キーワードであるために初めて理にかなっています。しかし、それが起こった2回目は、テーブルの列名はグレードです。これはキーワードでも予約済みの単語でもありません。オブジェクトを生成するときに、Subsonicがこの列名をGradexに変える理由を誰かが知っていますか?

ありがとう。

役に立ちましたか?

解決

あなたが想定したように、それらが.NETまたはSQLタイプと競合しないように単語を置き換えることです。さまざまなDBプロバイダーとの亜音速講演を忘れないでください。「グレード」はMSSQLタイプではありませんが、それはOracleまたはMySQLなどです...

subsonic.utilities.utilityの下では、Applendingを行うKeywordCheckという名前のメソッドです。

おそらく、独自のバージョンをコンパイルし、この方法を修正して「グレード」を除外することができます。

  public static string KeyWordCheck(string word, string table, DataProvider provider)
        {
            string appendWith = "X";
            if (provider.AppendWith != string.Empty)
                appendWith = provider.AppendWith;

            return KeyWordCheck(word, table, appendWith);
        }
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top