0

在这里,我使用 XML 加载我的下拉值。在 HTTPPost 期间,从 XML 加载这些下拉值后,所有其他模型值都变为空,我的模型只有这些下拉值。

    [HttpPost]
            public ActionResult Analyze(AnalyzeModels model)
            {
              if (ModelState.IsValid)
            {
                model.RequestID = ObjCommon.GenerateRequsetID(ObjSharedEntities.UserID, "ATA_1");                       // Generation of the Request ID
            }
               model.ChartName = ObjCommon.GetFusionSWFReportName("ASTrend", "ATA_1"); 
               var ppgFile = Server.MapPath(DataTemplate.PPGXmlPath);
               var ppgItems =
                    from brand in XDocument.Load(ppgFile).Descendants("PPGItem")
                    select new SelectListItem
                    {
                        Value = brand.Element("Value").Value,
                        Text = brand.Element("Text").Value
                    };
               model = new AnalyzeModels
                {
                    PPGItems = ppgItems
                };

                return View(model);
           }

有什么建议吗?

4

1 回答 1

1

在您的代码中:

       model = new AnalyzeModels
        {
            PPGItems = ppgItems
        };

您正在创建模型的新实例,这将有效地清除您设置的值。

考虑改为这样做:

model.PPGItems = ppgItems
于 2013-01-07T12:56:31.237 回答