私は2つのMS Accessデータベースの間でインポートアシスタント(C#.NET 4)で作業しており、データの一貫性を確保するためのメカニズムを実装する必要があります。データのインポート時に適合性チェックを
例:
インポート人。
問題:人のテーブルから
列が異なる列のサイズを持っています。
ソーステーブル:アドレス列サイズ= 50;
宛先テーブル:アドレス列サイズ= 30;
アドレスが30文字を超える人物をインポートしようとすると、問題が表示されます。
所望の解:以前の問題は、ダイアログを表示さ
は、ユーザが再定義するか、必要長さに対応する値を切り捨てることができる場合に表示する必要があります。
インポート機能は、私は私のオブジェクトの魔女に格納されているメタデータ情報は、私の先の列の列サイズにアクセスすることを可能にする必要があり、この
private static void ImportPerson()
{
var sourcePerson = sourcePerson.GetObject();
if (sourcePerson == null)
return;
var person = new MyPerson();
person.Address.Value = sourcePerson.Address;
person.Company.Value = sourcePerson.Company;
person.Save();
}
ようになります。
person.Address.ColumnSize
このように、ビジネスオブジェクトに新しい値を埋め込んだ後、このようにすることができます。
if (person.Address.ColumnSize.CompareTo(person.Address.Value.Length)) < 0
// show dialog ...
残念ながら、これはすべてのプロパティ(住所、会社...など)を個別にチェックすることを意味します。
私はすべてのプロパティを個別にチェックする必要がない、より一般的なアプローチを探しています。
すべてのアイデア、提案、考えが高く評価されます。
これは興味深いです。私はそれを試してみましょう。しかし、私はビジネスオブジェクトからダイアログを表示することについて確信していません – thedev
私が提案していることは、ダイアログを表示する場所に関係なく、MyPersonクラスのプロパティにアクセスする別の方法です。コードの2番目のビットは、現在のセットアップとまったく同じ場所にあります。 –
あなたは正しいです...私はそれを試してみましょう;)ありがとう – thedev