Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/33.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
C# ASP.NET MVC AJAX模型&x27;的虚拟对象为空_C#_Asp.net_Asp.net Mvc_Ajax - Fatal编程技术网

C# ASP.NET MVC AJAX模型&x27;的虚拟对象为空

C# ASP.NET MVC AJAX模型&x27;的虚拟对象为空,c#,asp.net,asp.net-mvc,ajax,C#,Asp.net,Asp.net Mvc,Ajax,我使用ASP.NET MVC和C#将对象(POCO模型类)插入数据库。请求和响应由jqueryajax处理 响应是一个显示对象数据的强类型局部视图。然后将部分视图中的html附加到web页面 对象类(项目类)包含一个虚拟对象(状态类),该虚拟对象具有更多也应返回的属性 我遇到的问题是,当由AJAX处理时,虚拟对象(状态)返回为null。但是,如果禁用AJAX,回发将显示正确的虚拟对象数据 不确定它是否会有多大帮助,但下面是我代码的一部分 控制器动作 public ActionResult Add

我使用ASP.NET MVC和C#将对象(POCO模型类)插入数据库。请求和响应由jqueryajax处理

响应是一个显示对象数据的强类型局部视图。然后将部分视图中的html附加到web页面

对象类(项目类)包含一个虚拟对象(状态类),该虚拟对象具有更多也应返回的属性

我遇到的问题是,当由AJAX处理时,虚拟对象(状态)返回为null。但是,如果禁用AJAX,回发将显示正确的虚拟对象数据

不确定它是否会有多大帮助,但下面是我代码的一部分

控制器动作

public ActionResult AddProject(UpdateProjectModel model)
    {
        System.Guid guid = System.Guid.NewGuid();

        var project = new Project
        {
            Guid = guid.ToString(),
            JobNumber = model.JobNumber,
            Title = model.Title,
            Client = model.Client,
            Details = model.Details,
            StatusID = model.StatusID,
            LastModified = DateTime.Now
        };

        _projectService.AddProject(project);

        if (Request.IsAjaxRequest())
        {
            var newProject = _projectService.GetProjectByGuid(project.Guid);

            return PartialView("Project", newProject);
        }
        else
        {
            return RedirectToAction("Index");
        }
    }
项目类

public class Project
{
    [Key]
    public int ProjectID { get; set; }

    public string Guid { get; set; }

    public string JobNumber { get; set; }

    public string Title { get; set; }

    public string Client { get; set; }

    public string Details { get; set; }

    public int StatusID { get; set; }

    public DateTime LastModified { get; set; }

    public virtual Status Status { get; set; }
}
地位等级

public class Status
{
    [Key]
    public int StatusID { get; set; }

    public string StatusText { get; set; }
}

因此,我的问题是如何让项目状态在由AJAX处理时不返回null?

我忘记了在GetProjectByGuid方法中“包含”虚拟状态。现在可以了。

您是否尝试过显式设置项目类的Status属性?类似于:if(Request.IsAjaxRequest()){var newProject=newProject{Status=newstatus{StatusText=“Testing”};返回PartialView(“Project”,newProject);}以确保它不是您的_projectService.GetProjectByGuid(Project.Guid);这不是设置吗?只是注意到我忘了在GetProjectByGuid方法中“包含”虚拟状态!现在可以了。太好了,你能删除你自己的问题吗?谢谢你。你已经解决了这个问题。请将此标记为“答案”,以便此问题不再出现在未回答的列表中。:)