Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/328.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#3.0匿名类型:命名_C#_Naming_Anonymous Types_.net 3.0 - Fatal编程技术网

C#3.0匿名类型:命名

C#3.0匿名类型:命名,c#,naming,anonymous-types,.net-3.0,C#,Naming,Anonymous Types,.net 3.0,我想知道是否有某种方法可以命名或重命名匿名类型的属性,以便在属性名称中包含空格。例如: var resultSet = from customer in customerList select new { FirstName = customer.firstName; }; 在这个例子中,我希望FirstName是“FirstName”。这个问题的原因是,我有一个用户控件,它公开了一个公共数据源属性,我绑定到不同的匿名类型。它现在工作得很好,除了一个小缺

我想知道是否有某种方法可以命名或重命名匿名类型的属性,以便在属性名称中包含空格。例如:

var resultSet = from customer in customerList
    select new 
    {
       FirstName = customer.firstName;
    };

在这个例子中,我希望FirstName是“FirstName”。这个问题的原因是,我有一个用户控件,它公开了一个公共数据源属性,我绑定到不同的匿名类型。它现在工作得很好,除了一个小缺点,就是列名不太方便用户使用(用名字代替名字)。

不,这是不可能的,成员的名字中不允许有空格,数据绑定后,您可以使用下划线或以编程方式更改列的标题…

我会在属性中添加一个属性,您可以在其中指定自定义名称,并且您可以使用该属性提供更多用户友好的名称。

这样做怎么样:

var resultSet = from customer in customerList
                select new 
                {
                    Value = customer.firstName,
                    Title = "First Name"
                };

然后在用户控件中,使用值作为内容,标题作为列名。

CMS,添加下划线或其他字符并在用户控件标题中用空格替换此字符是否有问题?您不能在匿名对象创建表达式中指定属性。