如何为属性定义别名

时间:2012-05-23 20:00:02

标签: c# .net linq-to-sql c#-4.0 .net-3.5

我想为生成的代码中的属性生成别名。我到目前为止所做的就是:

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

        set
        {
            this.User = value;
        }
    }
}

我想知道是否还有其他方法可以在C#中定义别名。 Purchase类由Linq-to-SQL

生成

2 个答案:

答案 0 :(得分:2)

如果您希望使用不同的属性名称使用newtonSoft向JSON发送信息,则可以使用

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

如果您不希望您的对象遵循C#约定并与要接收或发送的JSON对象匹配,这可以帮助您

答案 1 :(得分:1)

不,用C#做不可能。属性名称是您可以为其定义的单个标识符。

不知道这是否是您要搜索的内容:

但您可以定义(比方说)Dictionary<string,object>其中Key属性名称value是属性的值。通过这种方式,您可以定义动态属性现金,并在运行时更改属性名称和值

或使用ExpandoObject,如果您使用C# 4.0