2016-08-05 2 views
3

オブジェクトリストに行番号を追加します。
は、ここで彼ら私は今それを行うのですが、マッピングのための
オートマトンでマッピングしているときにオブジェクトリストに行番号を追加できますか?

プロフィールより良い方法がなければならない

public class VendorEnquiryDM_TO_VM : Profile 
{ 
    public VendorEnquiryDM_TO_VM() 
    { 
     CreateMap<VENDORENQUIRY, VendorEnquiryVM>(); 
    } 
} 
public class VendorEnquiryVM_TO_DM : Profile 
{ 
    public VendorEnquiryVM_TO_DM() 
    { 
     CreateMap<VENDOR_ENQUIRY, VendorEnquiryVM>().ReverseMap(); 
    } 
} 

登録プロファイル

cfg.AddProfile<VendorEnquiryDM_TO_VM>(); 
cfg.AddProfile<VendorEnquiryVM_TO_DM>(); 

ティ私はスヌーをどのように追加するのですか?

alldata = Mapper.Map<IEnumerable<Vendor_EnquiryVM>>(objDAO.getVendorEnquiry()); 
var _roles = alldata.Select((t, index) => new Vendor_EnquiryVM 
{ 
    sno = index + 1, 
    CONTACT_NO=t.CONTACT_NO, 
    DATE=t.DATE, 
    EMAIL=t.EMAIL, 
    id=t.id, 
    FIRST_NAME=t.FIRST_NAME, 
    wer=t.wer, 
    asdf=t.asdf 
}); 

によりちょうど1つのシリアルnoに。私はすべてのプロパティを割り当てる必要があり、これは大規模なモデルのために私にはいくらか不快です、私はこれを行うより良い方法を提案してください。

答えて

2

あなたは、静的イドを定義し、クラスを作成するときに、あなたのクラスコードを使用するためには

public class Test 
{ 
    private static int mId = 0; 

    public Test() 
    { 
     mId = mId +1; 
    } 

    public int Id 
    { 
     get{ return mId;} 
    } 
} 

Here a demo

のようになりますどのようにここで1

ことによってそれをインクリメントすることができますListのようなコレクションと同じアイデアをいくつか変更してここでやります。

public class Test 
{ 
    private static int mIndex = 0; // this parameter will be incremented for each new Test 
    private int mId =0; // this parameter will hold the last incremented value 

    public Test() 
    { 
     mId = ++mIndex; // mIndex++ if you want to start with 0 
    } 

    public int Id 
    { 
     get{ return mId;} 
    } 
} 
これはあなたに役立つ

Demo with lists

希望

+0

それはテストクラスのオブジェクトのコレクションにItemIndex + 1を返すのだろうか? –

+0

@BrBhardwajはい、デモ – Monah

+0

をチェックしてください。このソリューションのどこに問題がありますか? – Monah

関連する問題