C# 什么是(类型1)和#x2B;(type2)表示使用GetType().ToString()?
我正在编写一个小控制台应用程序来测试一些基本的MS ProjectServer互操作。我可以毫无问题地连接到服务器,并且我正在尝试为(int I=0;IC# 什么是(类型1)和#x2B;(type2)表示使用GetType().ToString()?,c#,types,tostring,gettype,C#,Types,Tostring,Gettype,我正在编写一个小控制台应用程序来测试一些基本的MS ProjectServer互操作。我可以毫无问题地连接到服务器,并且我正在尝试为(int I=0;I
foreach(projectDataSet.Project中的var Project)
循环
当我为执行时,projectDataSet.Project
的类型是SvcProject.projectDataSet.ProjectDataTable
。因此,我做了以下工作:
projectClient.ReadProject(projectDataSet.Project[i].PROJ_UID,
SvcProject.DataStoreEnum.WorkingStore);
获取我需要的项目对象
但是当我执行foreach
变体时,对象project
的类型是SvcProject.ProjectDataSet+ProjectRow
。我不知道怎么处理这件事。确切地说,这意味着什么?这意味着type2
嵌套在type1
class type1
{
public class type2 { }
}
为了证明这一点:
foreach (var t in typeof (A).GetNestedTypes(BindingFlags.Public | BindingFlags.NonPublic))
Console.WriteLine(t.FullName);
class A
{
private class B
{
}
protected class C
{
}
internal class D
{
}
public class E
{
}
}
输出:
YourAssembly.A+B
YourAssembly.A+C
YourAssembly.A+D
YourAssembly.A+E
你的装配。A+B
你的装配。A+C
你的装配。A+D
你的集会
谢谢我如何在foreach循环中访问E对象的道具?比如:var list=newlist();添加(新的E());foreach(列表中的var myVar)Console.WriteLine(“{0}”,“我应该在这里放什么来检索有用的道具?”@布鲁诺萨博亚:这和你对任何其他类型的都是一样的。如果你不知道怎么做,请问另一个问题,因为它实际上不在你所问的问题的范围内。好的,谢谢,我正在考虑使用反射,但是这太过分了,如果是这样的话,最好坚持for循环