public class ClassA
{
public string MyString {get; set;}
}
public class ClassB
{
public List<ClassA> MyObjects {get; set;}
}
List<ClassB> classBList = new List<ClassB>();
var results = (from i in classBList select i.MyObjects).Distinct();
Run Code Online (Sandbox Code Playgroud)
我想要一个不同的所有ClassA对象列表classBList.我如何使用LINQ解决这个问题?我正在考虑嵌套查询,但无法弄明白.非常感谢任何帮助.
这是问题,我有一堆像
S:\ HELLO\HI
S:\ HELLO2\HI\HElloAgain
在文件系统上,它将这些目录显示为
S:\ hello \嗨
S:\ hello2\Hi\helloAgain
C#中是否有任何函数可以为我提供目录的文件系统名称与正确的大小写?
可能措辞不对,但这就是我所拥有的,这是我想要实现的结果:
class Cake
{
public List<string> Ingrediants {get;set;}
public DateTime Baked {get;set;}
public string CakeName {get;set;}
}
List<Cake> cakes= new List<Cake>();
cakes.Add(new Cake() {CakeName = "Cake1", Ingrediants = new List<string>() {"Sugar", "Chocolate"}});
cakes.Add(new Cake() {CakeName = "Cake2", Ingrediants = new List<string>() {"Sugar", "Butter"}});
cakes.Add(new Cake() {CakeName = "Cake3", Ingrediants = new List<string>() {"Stevia", "Butter"}});
Run Code Online (Sandbox Code Playgroud)
我想用ingrediant分组蛋糕.所以我想最终得到这个:
- Sugar
Cake1
Cake2
- Stevia
Cake3
- Chocolate
Cake1
- Butter
Cake2
Cake3
Run Code Online (Sandbox Code Playgroud)
提前致谢!
这是我试图存储的类
[Serializable]
[XmlRoot(ElementName = "Database", IsNullable = false, Namespace = "http://somesite.com")]
class Database
{
[XmlAttribute(AttributeName = "Name")]
public string Name { get; set; }
[XmlAttribute(AttributeName = "Provider")]
public DatabaseProvider Provider { get; set; }
[XmlAttribute(AttributeName = "Driver")]
public string Driver { get; set; }
[XmlElement("DatabaseEntry")]
public List<DatabaseEntry> SavedEntries { get; set; }
public Database()
{
SavedEntries = new List<DatabaseEntry>();
}
public Database(string type, string provider, string driver)
{
Name = type;
Driver = driver;
Provider = DatabaseProvider.SqlClient;
Provider = SetProvider(provider); …Run Code Online (Sandbox Code Playgroud) 我正在运行visual studio 2008.每当我去设计师查看我的一个表单时,设计师都会使表单略大一些.这种情况发生在我有最小尺寸的表格上.我希望表单是最小的大小,为什么它会不断调整我的大小?
我在我的XSD文件中定义了几个元素,我在文档中稍后将其用作参考.我确实希望这些"引用"元素中的任何一个构成有效的xml文件.
比如我有
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element name="Section">
<xs:complexType>
<xs:sequence>
<xs:element ref="Section" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="code"/>
<xs:attribute name="url"/>
<xs:attribute name="isLegacy"/>
<xs:attribute name="name"/>
<xs:attribute name="helpFileName"/>
</xs:complexType>
</xs:element>
<xs:element name="Sections">
<xs:complexType>
<xs:sequence>
<xs:element ref="Section" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
Run Code Online (Sandbox Code Playgroud)
我不希望以下xml验证(如果这是文件中的唯一行)
<Section code="" url="" isLegacy="" name="" helpFileName="" />
Run Code Online (Sandbox Code Playgroud)
从全局删除"节"节点阻止我引用它以进行递归
当我在标准用户模式下运行此代码时,我得到了所有驱动器,包括网络驱动器.以管理员身份运行时,网络驱动器不会出现在列表中.是什么赋予了?
List<string> drives = Environment.GetLogicalDrives().ToList();
StringBuilder driveList = new StringBuilder();
foreach (string drive in drives)
driveList.AppendLine(drive);
MessageBox.Show(driveList.ToString());
Run Code Online (Sandbox Code Playgroud)
这是在Windows 7下运行的.网络驱动器来自Novell.代码是使用.NET 4框架用C#编写的.