Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/309.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
MVC4C#如何创建返回列表的方法<;对象>;_C#_Asp.net Mvc 4 - Fatal编程技术网

MVC4C#如何创建返回列表的方法<;对象>;

MVC4C#如何创建返回列表的方法<;对象>;,c#,asp.net-mvc-4,C#,Asp.net Mvc 4,我正在使用EF,并在数据库中植入一些产品数据。我正在播种的数据有一部分将重复大约100次。与其复制和粘贴我的代码,我宁愿用一个方法填充我的列表,但由于我是一个新手,我似乎无法使其正常工作: 以下是上下文中的代码: context.Products.AddOrUpdate( pr => pr.Name, new Product { Name = "3.5x5",

我正在使用EF,并在数据库中植入一些产品数据。我正在播种的数据有一部分将重复大约100次。与其复制和粘贴我的代码,我宁愿用一个方法填充我的列表,但由于我是一个新手,我似乎无法使其正常工作:

以下是上下文中的代码:

context.Products.AddOrUpdate(
            pr => pr.Name,
            new Product
            {
                Name = "3.5x5",
                ProductCategoryId = 1,
                ProductSubCategoryId1 = 1,
                ProductSubCategoryId2 = 3,
                VendorId = 1,
                HeightUnitId = 2,
                Height = (decimal)3.5,
                Width = 5,
                ProductOptions =
                new List<ProductOption>
                {
                    new ProductOption { Name = "Paper", InputTypeSingleOptionId = 1, InputTypeMultipleOptionId = 2, SortOrder = 1,
                        ProductOptionsDetails =
                        new List<ProductOptionsDetail>
                        {
                            new ProductOptionsDetail { Name = "Glossy", Value = "Glossy", IsDefault = true, SortOrder = 1 },
                            new ProductOptionsDetail { Name = "Matte", Value = "Matte", IsDefault = false, SortOrder = 2 },
                            new ProductOptionsDetail { Name = "Metallic", Value = "Metallic", IsDefault = false, SortOrder = 3 },
                            new ProductOptionsDetail { Name = "Lustre", Value = "Lustre", IsDefault = false, SortOrder = 4 }
                        }
                    },
                    new ProductOption { Name = "Color", InputTypeSingleOptionId = 1, InputTypeMultipleOptionId = 2, SortOrder = 2,
                        ProductOptionsDetails =
                        new List<ProductOptionsDetail>
                        {
                            new ProductOptionsDetail { Name = "Color", Value = "Color", IsDefault = true, SortOrder = 1 },
                            new ProductOptionsDetail { Name = "Black and white", Value = "Black and White", IsDefault = false, SortOrder = 2 },
                            new ProductOptionsDetail { Name = "Sepia", Value = "Sepia", IsDefault = false, SortOrder = 3 }
                        } 
                    },
                    new ProductOption { Name = "Texture", InputTypeSingleOptionId = 1, InputTypeMultipleOptionId = 2, SortOrder = 3,
                        ProductOptionsDetails =
                        new List<ProductOptionsDetail>
                        {
                            new ProductOptionsDetail { Name = "None", Value = "None", IsDefault = true, SortOrder = 1 },
                            new ProductOptionsDetail { Name = "Linen texture", Value = "Linen", IsDefault = false, SortOrder = 2 },                         
                            new ProductOptionsDetail { Name = "Canvas texture", Value = "Canvas", IsDefault = false, SortOrder = 3 },
                            new ProductOptionsDetail { Name = "Watercolor texture", Value = "Canvas", IsDefault = false, SortOrder = 4 },
                            new ProductOptionsDetail { Name = "Pebble texture", Value = "Pebble", IsDefault = false, SortOrder = 5 }
                        }
                    },
                    new ProductOption { Name = "Coating", InputTypeSingleOptionId = 1, InputTypeMultipleOptionId = 2, SortOrder = 4,
                        ProductOptionsDetails =
                        new List<ProductOptionsDetail>
                        {
                            new ProductOptionsDetail { Name = "None", Value = "None", IsDefault = true, SortOrder = 1 },
                            new ProductOptionsDetail { Name = "Linen texture", Value = "Linen", IsDefault = false, SortOrder = 2 },                         
                            new ProductOptionsDetail { Name = "Canvas texture", Value = "Canvas", IsDefault = false, SortOrder = 3 },
                            new ProductOptionsDetail { Name = "Watercolor texture", Value = "Canvas", IsDefault = false, SortOrder = 4 },
                            new ProductOptionsDetail { Name = "Pebble texture", Value = "Pebble", IsDefault = false, SortOrder = 5 }
                        }
                    }
                }
            },
context.Products.AddOrUpdate(
pr=>pr.名称,
新产品
{
Name=“3.5x5”,
ProductCategoryId=1,
ProductSubcategory ID1=1,
ProductSubcategory ID2=3,
VendorId=1,
HeightUnitId=2,
高度=(十进制)3.5,
宽度=5,
产品选项=
新名单
{
新产品选项{Name=“Paper”,InputTypeSingleOptionId=1,InputTypeMultipleOptionId=2,SortOrder=1,
产品选项详细信息=
新名单
{
新产品选项详细信息{Name=“光泽”,Value=“光泽”,IsDefault=true,SortOrder=1},
新产品选项详细信息{Name=“Matte”,Value=“Matte”,IsDefault=false,SortOrder=2},
新产品选项详细信息{Name=“Metallic”,Value=“Metallic”,IsDefault=false,SortOrder=3},
新产品选项详细信息{Name=“Lustre”,Value=“Lustre”,IsDefault=false,SortOrder=4}
}
},
新产品选项{Name=“Color”,InputTypeSingleOptionId=1,InputTypeMultipleOptionId=2,SortOrder=2,
产品选项详细信息=
新名单
{
新产品选项详细信息{Name=“Color”,Value=“Color”,IsDefault=true,SortOrder=1},
新产品选项详细信息{Name=“Black and white”,Value=“Black and white”,IsDefault=false,SortOrder=2},
新产品选项详细信息{Name=“Sepia”,Value=“Sepia”,IsDefault=false,SortOrder=3}
} 
},
新产品选项{Name=“Texture”,InputTypeSingleOptionId=1,InputTypeMultipleOptionId=2,SortOrder=3,
产品选项详细信息=
新名单
{
新产品选项详细信息{Name=“None”,Value=“None”,IsDefault=true,SortOrder=1},
新产品选项详细信息{Name=“linne texture”,Value=“linne”,IsDefault=false,SortOrder=2},
新产品选项详细信息{Name=“Canvas texture”,Value=“Canvas”,IsDefault=false,SortOrder=3},
新产品选项详细信息{Name=“Watercolor texture”,Value=“Canvas”,IsDefault=false,SortOrder=4},
新产品选项详细信息{Name=“Pebble texture”,Value=“Pebble”,IsDefault=false,SortOrder=5}
}
},
新产品选项{Name=“Coating”,InputTypeSingleOptionId=1,InputTypeMultipleOptionId=2,SortOrder=4,
产品选项详细信息=
新名单
{
新产品选项详细信息{Name=“None”,Value=“None”,IsDefault=true,SortOrder=1},
新产品选项详细信息{Name=“linne texture”,Value=“linne”,IsDefault=false,SortOrder=2},
新产品选项详细信息{Name=“Canvas texture”,Value=“Canvas”,IsDefault=false,SortOrder=3},
新产品选项详细信息{Name=“Watercolor texture”,Value=“Canvas”,IsDefault=false,SortOrder=4},
新产品选项详细信息{Name=“Pebble texture”,Value=“Pebble”,IsDefault=false,SortOrder=5}
}
}
}
},
我想从一个方法返回的部分如下: ProductOptions=getOptions()所有嵌套的代码都可以逐字重复。我曾尝试使用其他一些示例,但在Visual Studio中不断出现错误。如果我能找到一种非常基本的方法,那将不胜感激。

公共列表getOptions(){
public List<ProductOptionsDetail> GetOptions() {
    return new List<ProductOptionsDetail>()
        {
            new ProductOptionsDetail() { Name = "None", Value = "None", IsDefault = true, SortOrder = 1 },
            new ProductOptionsDetail() { Name = "Linen texture", Value = "Linen", IsDefault = false, SortOrder = 2 },                         
            new ProductOptionsDetail() { Name = "Canvas texture", Value = "Canvas", IsDefault = false, SortOrder = 3 },
            new ProductOptionsDetail() { Name = "Watercolor texture", Value = "Canvas", IsDefault = false, SortOrder = 4 },
            new ProductOptionsDetail() { Name = "Pebble texture", Value = "Pebble", IsDefault = false, SortOrder = 5 }
        };
}
返回新列表() { 新产品选项详细信息(){Name=“None”,Value=“None”,IsDefault=true,SortOrder=1}, 新产品选项Detail(){Name=“linne texture”,Value=“linne”,IsDefault=false,SortOrder=2}, 新产品选项详细信息(){Name=“Canvas texture”,Value=“Canvas”,IsDefault=false,SortOrder=3}, 新产品选项detail(){Name=“Watercolor texture”,Value=“Canvas”,IsDefault=false,SortOrder=4}, 新产品选项详细信息(){Name=“Pebble texture”,Value=“Pebble”,IsDefault=false,SortOrder=5} }; }
就这样!谢谢。我真不敢相信我把事情弄得太复杂了。再次感谢。@Ek0nomik-在使用初始化语法时,无参数构造函数不需要括号。通常情况下,您不会同时使用参数构造函数和初始化。