2012-05-23 14 views
5

生成されたコードのプロパティのエイリアスを生成したいとします。私がこれまでに何ができるすべてはあった。プロパティのエイリアスを定義する方法

partial class Purchase 
{ 
    public User Customer 
    { 
     get 
     { 
      return this.User; 
     } 

     set 
     { 
      this.User = value; 
     } 
    } 
} 

C#でエイリアスを定義するための他の方法があるかどうか、私は疑問に思います。 PurchaseクラスはLinq-to-SQLによって生成されました

+0

マップ名を変更できませんか? –

+0

@HenkHoltermanもし私がそうするなら、私はDBMLファイルを再生成するたびにこのプロセスを繰り返さなければならないでしょう。 –

+0

それが問題であれば問題ありません。しかし、あなたの投稿コードはエイリアスを作成しています。実際の質問はどうですか?何か問題はありますか? –

答えて

2

いいえ、C#では実行できません。プロパティ名は、それに対して定義できる単一の識別子です。

これはあなたが探したりしていないものであれば知ってはいけない:

をしかし、あなたは(例えば)KeypropertyNameので、valueは、プロパティの値であるDictionary<string,object>を定義することができます。このようにして、プロパティ名および値を実行時に変更することで、動的プロパティの現金を定義することができます。

またはExpandoObjectを使用することができますあなたがnewtonSoftを使用してJSONに情報を送信するには、プロパティの別の名前にしたい場合はC# 4.0

+5

投稿コードにCustomer _is_というユーザーの別名があります。 OPはそれを行うための他の方法を求めている。 –

1

を使用している場合、あなたはこれを助けることができる

[JsonProperty("alias_name")] 
public type YourProperty {get;set;} 

を使用することができますあなたのオブジェクトがC#のコンベンションに従い、受信または送信されるJSONオブジェクトと一致することを望まない場合は、

関連する問題