我可以通过展示我希望的例子
来最好地解释这一点我有一个模特
public class TestModel
{
public int Test1 { get; set; }
public string Test2 { get; set; }
}
我列出了一个清单
List<TestModel> testList = new List<TestModel>
现在最初添加项目时我应该使用
testList.Add(new TestModel { Test1 = 1, Test2 = "Test" });
但我希望能做的是
testList.Add(1, "Test")
有没有办法实现这个目标?
答案 0 :(得分:4)
您可以使用扩展方法来执行此操作,但我个人不会。
public static class TestModelListExtensions
{
public static void Add(this List<TestModel> list, int test1, string test2)
{
list.Add(new TestModel { Test1 = test1, Test2 = test2 });
}
}
class Program
{
static void Main(string[] args)
{
List<TestModel> list = new List<TestModel>();
list.Add(1, "hello");
}
}
答案 1 :(得分:2)
您可以创建TestModel
的构造函数并执行:
testList.Add(new TestModel(1, "Test"));
public class TestModel
{
public int Test1 { get; set; }
public string Test2 { get; set; }
public TestModel(int test1, string test2)
{
Test1 = test1;
Test2 = test2;
}
}
答案 2 :(得分:0)
试试这个
public static class Extensions {
public static List<TestModel> Add(this List<TestModel> list, int test1, string test2) {
return list.Add(new TestModel { Test1 = test1, Test2 = test2 });
}
}