0

約108のプロパティを持つMyEntity.csというエンティティクラスがあります。ASP .netアプリケーションUIで、<%fieldname%>の形式で区切られたいくつかのフィールド名またはデータポイントを含むデータベース(たとえば)からの文字列値を表示しています。フィールド名は、テーブルMyTableの列名に他なりません。また、MyTable(約108列)レコード(単一のレコードのみ)を読み取り、エンティティMyEntityにデータを入力します。

私がする必要があるのは、MyEntity property.cs値を<%fieldname%>を含む文字列とマージすることです。リフレクションを使用することを考えましたが、MyEntity.csのプロパティ名がMyTableの列名と正確に一致しない場合があります。ですから、どうすればいいのかわかりません。

MyEntityプロパティのpropertyname以外の名前を指定できる方法がある場合は、各プロパティのエンティティでMyTable列名を使用し、コードに反映してそれらにアクセスし、文字列の<%fieldname%を置き換えることができます。 >MyEntity.csプロパティ値を使用します。何か助けていただければ幸いです。

4

1 に答える 1

0

エンティティ フレームワークは、モデル化するテーブルとストアド プロシージャのクラスを自動生成します。これらのファイルを更新してプロパティ名を変更できなかった理由がわかりません。おそらくこれを行うことはお勧めしません。データベースからモデルを更新するたびに、それらを再変更する必要があるでしょう。

IMO はかなり悪いデータ モデルを持っているように聞こえます... 1 つのテーブルに 108 列ですか? 悪夢は正常化されていないように聞こえ、そのメンテナンスを想像することはできません。

于 2012-10-03T01:29:44.920 に答える