选择列表 C# 中定义为枚举的项目
Selecting items defined as enum in a list C#
我是 C# 的初学者。我想要做的是 return 一个包含 4 项的列表。我将定义为枚举的电子书项目映射到 BookList 中,我只想 return 将这些项目定义为枚举。但是,Lib class 中有多个属性。我只是不知道如何从列表中 return 它们。
如果我在注释行中执行相同操作,列表中的所有属性 return。另外,我不能 return 其他枚举项。我不知道该怎么做。
这是我的映射部分:
public static Book Map(Tax tax)
{
Book b = new Book();
b.BookList.Where(x => x.BookType == EBook.Type1).FirstOrDefault().Dual = tax.TaxType1;
b.BookList.Where(x => x.BookType == EBook.Type2).FirstOrDefault().Dual = tax.TaxType2;
b.BookList = new List<Lib> { new Lib() { BookType = EBook.Type1 } }; //here
}
图书class:
public class Book
{
public Book();
public List<Lib> BookList { get; set; }
}
库 Class:
public class Lib: ILib
{
public EBook BookType;
public double Dual;
.....
}
电子书部分:
public enum EBook
{
Type1 = 1,
Type2 = 2,
Type3 = 3,
Type4 = 4
}
税收class:
public interface Tax
{
double TaxType1 { get; set; }
double TaxType2 { get; set; }
double TaxType3 { get; set; }
double TaxType4 { get; set; }
}
来自 Postman 的 json returning 应如下所示:
"BookList": [
{
"Type1": 12.4,
"Type2": 15.5,
"Type3": 10.8,
"Type4": 7.55
}]
它应该 return 定义为枚举的项目的相应 TaxType 值。
看来您只需要为每个 BookType 创建一个 Lib
和各自的 TaxType:
b.BookList = new List<Lib>
{
new Lib { BookType = EBook.Type1, Dual = tax.TaxType1 },
new Lib { BookType = EBook.Type2, Dual = tax.TaxType2 },
new Lib { BookType = EBook.Type3, Dual = tax.TaxType3 },
new Lib { BookType = EBook.Type4, Dual = tax.TaxType4 }
};
我是 C# 的初学者。我想要做的是 return 一个包含 4 项的列表。我将定义为枚举的电子书项目映射到 BookList 中,我只想 return 将这些项目定义为枚举。但是,Lib class 中有多个属性。我只是不知道如何从列表中 return 它们。
如果我在注释行中执行相同操作,列表中的所有属性 return。另外,我不能 return 其他枚举项。我不知道该怎么做。
这是我的映射部分:
public static Book Map(Tax tax)
{
Book b = new Book();
b.BookList.Where(x => x.BookType == EBook.Type1).FirstOrDefault().Dual = tax.TaxType1;
b.BookList.Where(x => x.BookType == EBook.Type2).FirstOrDefault().Dual = tax.TaxType2;
b.BookList = new List<Lib> { new Lib() { BookType = EBook.Type1 } }; //here
}
图书class:
public class Book
{
public Book();
public List<Lib> BookList { get; set; }
}
库 Class:
public class Lib: ILib
{
public EBook BookType;
public double Dual;
.....
}
电子书部分:
public enum EBook
{
Type1 = 1,
Type2 = 2,
Type3 = 3,
Type4 = 4
}
税收class:
public interface Tax
{
double TaxType1 { get; set; }
double TaxType2 { get; set; }
double TaxType3 { get; set; }
double TaxType4 { get; set; }
}
来自 Postman 的 json returning 应如下所示:
"BookList": [
{
"Type1": 12.4,
"Type2": 15.5,
"Type3": 10.8,
"Type4": 7.55
}]
它应该 return 定义为枚举的项目的相应 TaxType 值。
看来您只需要为每个 BookType 创建一个 Lib
和各自的 TaxType:
b.BookList = new List<Lib>
{
new Lib { BookType = EBook.Type1, Dual = tax.TaxType1 },
new Lib { BookType = EBook.Type2, Dual = tax.TaxType2 },
new Lib { BookType = EBook.Type3, Dual = tax.TaxType3 },
new Lib { BookType = EBook.Type4, Dual = tax.TaxType4 }
};