Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/15.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
ASP.NET MVC AngularJS页面返回模型对象_Angularjs_Asp.net Mvc_Asp.net Mvc 4_Asp.net Mvc 5 - Fatal编程技术网

ASP.NET MVC AngularJS页面返回模型对象

ASP.NET MVC AngularJS页面返回模型对象,angularjs,asp.net-mvc,asp.net-mvc-4,asp.net-mvc-5,Angularjs,Asp.net Mvc,Asp.net Mvc 4,Asp.net Mvc 5,我有一个ASP.NETMVC5AngularJS(1.5.6)应用程序 我有一个MVC控制器操作方法,它返回模型对象并将该数据绑定到$scope变量 代码如下: public class ApiurlAndUser { public string ApiUrl { get; set; } public string UserName { get; set; } } public ApiurlAndUser GetApiurlAndUsername() {

我有一个ASP.NETMVC5AngularJS(1.5.6)应用程序

我有一个MVC控制器操作方法,它返回模型对象并将该数据绑定到$scope变量

代码如下:

public class ApiurlAndUser
{
    public string ApiUrl { get; set; }
    public string UserName { get; set; }
}
public ApiurlAndUser GetApiurlAndUsername()
    {
        var data = new ApiurlAndUser();
        data.ApiUrl = ConfigurationManager.AppSettings["WebApiUrl"].ToString();
        var request = Request;
        if (request != null)
        {
            var userIdentity = ((System.Web.HttpRequestWrapper)request).LogonUserIdentity;
            if(userIdentity!=null)
                data.UserName = userIdentity.Name;
        }
        return data;
    }
vm.getApidomainAndUsername = function () {
            var url = vm.localUrl + 'home/GetApiurlAndUsername';
            $http({
                method: 'GET',
                url: url,
                headers: {
                    'Content-Type': 'application/json'
                }
            }).then(function (result) {
                debugger;
                if (result.data.length > 0) {
                    var output = result.data;
                    $scope.userName = result.data.UserName;  //here it says undefined
                    $scope.apiDomain = result.data.ApiUrl;
                }
                else {
                    vm.g3pUserName = 'InvalidUser';
                }
            }, function (error) {
            });
        };
        vm.getApidomainAndUsername();
型号类别:

public class ApiurlAndUser
{
    public string ApiUrl { get; set; }
    public string UserName { get; set; }
}
public ApiurlAndUser GetApiurlAndUsername()
    {
        var data = new ApiurlAndUser();
        data.ApiUrl = ConfigurationManager.AppSettings["WebApiUrl"].ToString();
        var request = Request;
        if (request != null)
        {
            var userIdentity = ((System.Web.HttpRequestWrapper)request).LogonUserIdentity;
            if(userIdentity!=null)
                data.UserName = userIdentity.Name;
        }
        return data;
    }
vm.getApidomainAndUsername = function () {
            var url = vm.localUrl + 'home/GetApiurlAndUsername';
            $http({
                method: 'GET',
                url: url,
                headers: {
                    'Content-Type': 'application/json'
                }
            }).then(function (result) {
                debugger;
                if (result.data.length > 0) {
                    var output = result.data;
                    $scope.userName = result.data.UserName;  //here it says undefined
                    $scope.apiDomain = result.data.ApiUrl;
                }
                else {
                    vm.g3pUserName = 'InvalidUser';
                }
            }, function (error) {
            });
        };
        vm.getApidomainAndUsername();
控制器动作方法:

public class ApiurlAndUser
{
    public string ApiUrl { get; set; }
    public string UserName { get; set; }
}
public ApiurlAndUser GetApiurlAndUsername()
    {
        var data = new ApiurlAndUser();
        data.ApiUrl = ConfigurationManager.AppSettings["WebApiUrl"].ToString();
        var request = Request;
        if (request != null)
        {
            var userIdentity = ((System.Web.HttpRequestWrapper)request).LogonUserIdentity;
            if(userIdentity!=null)
                data.UserName = userIdentity.Name;
        }
        return data;
    }
vm.getApidomainAndUsername = function () {
            var url = vm.localUrl + 'home/GetApiurlAndUsername';
            $http({
                method: 'GET',
                url: url,
                headers: {
                    'Content-Type': 'application/json'
                }
            }).then(function (result) {
                debugger;
                if (result.data.length > 0) {
                    var output = result.data;
                    $scope.userName = result.data.UserName;  //here it says undefined
                    $scope.apiDomain = result.data.ApiUrl;
                }
                else {
                    vm.g3pUserName = 'InvalidUser';
                }
            }, function (error) {
            });
        };
        vm.getApidomainAndUsername();
app.js文件中的AngularJS代码:

public class ApiurlAndUser
{
    public string ApiUrl { get; set; }
    public string UserName { get; set; }
}
public ApiurlAndUser GetApiurlAndUsername()
    {
        var data = new ApiurlAndUser();
        data.ApiUrl = ConfigurationManager.AppSettings["WebApiUrl"].ToString();
        var request = Request;
        if (request != null)
        {
            var userIdentity = ((System.Web.HttpRequestWrapper)request).LogonUserIdentity;
            if(userIdentity!=null)
                data.UserName = userIdentity.Name;
        }
        return data;
    }
vm.getApidomainAndUsername = function () {
            var url = vm.localUrl + 'home/GetApiurlAndUsername';
            $http({
                method: 'GET',
                url: url,
                headers: {
                    'Content-Type': 'application/json'
                }
            }).then(function (result) {
                debugger;
                if (result.data.length > 0) {
                    var output = result.data;
                    $scope.userName = result.data.UserName;  //here it says undefined
                    $scope.apiDomain = result.data.ApiUrl;
                }
                else {
                    vm.g3pUserName = 'InvalidUser';
                }
            }, function (error) {
            });
        };
        vm.getApidomainAndUsername();
此处result.data不为空。它显示了模型的全名。但是如何在这里访问这些值呢?如何转换? 感谢您的回复

谢谢
丽塔

如果不知道你的结果是什么,很难判断。 我猜也许你需要

var output = JSON.parse(result.data);
$scope.Username = output.UserName;

如果不知道结果数据中包含什么,很难判断。 我猜也许你需要

var output = JSON.parse(result.data);
$scope.Username = output.UserName;