0

電話帳の連絡先のイベント計画アプリケーションに取り組んでいます。すべてを回避するpublic virtualprotected、私のContactクラスは次のようになります。

class Contact {
    //...
    Int32 Id { get; private set; } //primary key;
    String Name { get; private set; } 
    //...
}

顧客から、自分の電話帳と私のアプリケーションの電話帳の両方を処理するように依頼されました。そこで、IContactからインターフェイスを抽出し、同じインターフェイスを実装Contactする別のクラスを追加することを考えましたInternalContact(この名前は最低です)。問題は、顧客のデータベースが割り当てられた文字列を主キーとして使用しているため、Contactの Id タイプとInternalContactの Id タイプが異なることです。Id タイプが異なっていてもInvitation.Contact、タイプ マッピングを使用してプロパティをマッピングすることは可能ですか?<any>

前もってありがとう、ジュリオ

4

1 に答える 1

0

これがあなたが求めているものかどうかはわかりませんが、クラスを作成するために次のようなことができます:

interface IContact<T>
{
    T Id { get; }
}

public class Contact : IContact<int>
{
    public int Id { get; private set; }
}

public class InternalContact : IContact<string>
{
    public string Id { get; private set; }
}
于 2010-07-23T07:15:56.360 に答える