2016-12-14 11 views
0

私はこの質問への回答を検索しようとしましたが、おそらく私のGoogleのスキルがゆるんでいます(水曜日です)。C#Custom Setter Entity Framework 6.1.3

このようなカスタムセッターを使用したいと思います。

public class ITEMViewModel 
{ 
    public ITEM_ACTIVE ITEMDATA { get; set; } 
    private string _ThumbnailUNC; 
    public string ThumbnailUNC 
    { 
     get 
     { 
      return _ThumbnailUNC; 
     } 
     set 
     { 
      _ThumbnailUNC = FileLocation.getThumb(value); 
     } 
    } 
} 

これは私がこのようなことをする限り素晴らしいことです。

ae.ITEM_ACTIVE 
     .Where(x => x.ORG == Org && x.PART_NUMBER == PN) 
     .Select(x => new ITEMViewModel 
     { 
       ITEMDATA = x, 
       ThumbnailUNC = x.PART_NUMBER //This is the important part 
     }) 
     .FirstOrDefault(); 

私がしたいのはこれです。

set 
{ 
    _ThumbnailUNC = FileLocation.getThumb(ITEMDATA.PART_NUMBER); //Not value 
} 

ae.ITEM_ACTIVE 
     .Where(x => x.ORG == Org && x.PART_NUMBER == PN) 
     .Select(x => new ITEMViewModel 
     { 
       ITEMDATA = x 
     }) 
     .FirstOrDefault(); 

2番目の方法では常にnullが返されます(これは決して設定されません)ITEMDATAを設定するときに、そのセッターを常に実行する方法はありますか?

私はカスタムセッターとゲッターにはかなり新しいので、参考になると大変感謝しています。

答えて

1

あなたは間違った特性でそれをやっています。

private ITEM_ACTIVE _itemData; 
public string ThumbnailUNC { get; private set; } 
public ITEM_ACTIVE ITEMDATA 
{ 
    get 
    { 
     return _itemData; 
    } 
    set 
    { 
     _itemData = value; 
     ThumbnailUNC = value.PART_NUMBER; 
    } 
} 
+0

これはまさに私が探していたものです。いくつかの時間は簡単なものはGoogleの検索に難しいです:) –

関連する問題