Jader Dias
Jader Dias

Reputation: 90475

How to define an alias for a property

I want to generate aliases for properties in generated code. All I could do so far was:

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

        set
        {
            this.User = value;
        }
    }
}

I wonder if there is any other way to define an alias in C#. The Purchase class was generated by Linq-to-SQL

Upvotes: 9

Views: 22409

Answers (2)

freedeveloper
freedeveloper

Reputation: 4082

In the case that you want a different name of property to send information to JSON using newtonSoft, you can use

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

This can help you if you don't want that your object follow the C# convention and match with the JSON object to be received or sent

Upvotes: 7

Tigran
Tigran

Reputation: 62256

No, it's not possible to do in C#. Property name is single identifier you can define for it.

Don't know if this is what you're searching for or not:

but you can define (say) a Dictionary<string,object> where Key is a propertyname and value is a value of the property. In this way you can define dynamic property cash, with changing property names and values at runtime.

or can use an ExpandoObject , if you use C# 4.0

Upvotes: 1

Related Questions