Итак, если кто-то хочет попрактиковаться в своих навыках .net /webapi2/ angular, вот он:
скриншот
Я получаю странную ошибку (значения NULL), когда почти заканчиваю эту задачу
Мой Homecontroller.cs
Код: Выделить всё
namespace KLab.Controllers
{
public class HomeController : Controller
{
public ActionResult Index()
{
ViewBag.Title = "Home Page";
return View();
}
public JsonResult GetSections()
{
var db = new KLabDBEntities();
var samples = db.Samples.Include("User").Include("Status").ToList();
return Json(samples, JsonRequestBehavior.AllowGet);
}
}
}
my App.js
Код: Выделить всё
var myApp = angular.module('myApp', []);
myApp.controller('maincontroller', function ($scope, SampleService) {
getSamples();
function getSamples() {
SampleService.getSamples()
.success(function (Samples) {
$scope.Samples = Samples;
});
}
});
Код: Выделить всё
myApp.factory('SampleService', ['$http', function ($http) {
var urlBase = 'http://localhost:35656/api';
var SampleService = {};
SampleService.getSamples = function () {
return $http.get(urlBase + '/Samples');
};
return SampleService;
}]);
Код: Выделить всё
Samples
Samples Id
Code Number
Date
User Id
Status Id
{{Sample.SampleId}}
{{Sample.CodeNumber}}
{{Sample.Date.replace('/Date(','').replace(')/','') | date:"MM/dd/yyyy"}}
{{Sample.UserId}}
{{Sample.StatusId}}
поэтому мои модели генерируются Entity Framework:
Когда я создаю, я получаю:
Код: Выделить всё
Samples Id CodeNumber Date UserId StatusId
data data data 1 6
data data data 2 4
Я не получаю значений в этом столбце, и когда я вызываю JSON, я получаю:
Код: Выделить всё
[{"SampleId":1,"CodeNumber":129076,"Date":"2015-01-02T00:00:00","UserId":6,"StatusId":3,"Status":null,"User":null},
{"SampleId":2,"CodeNumber":850314,"Date":"2015-06-15T00:00:00","UserId":7,"StatusId":3,"Status":null,"User":null},
{"SampleId":3,"CodeNumber":176033,"Date":"2015-07-31T00:00:00","UserId":7,"StatusId":0,"Status":null,"User":null},
{"SampleId":4,"CodeNumber":129629,"Date":"2015-01-21T00:00:00","UserId":3,"StatusId":0,"Status":null,"User":null},"
Кто-то предположил, что это «объединение» должно выполняться внутри представления самой базы данных, а затем вызываться с помощью angular. например представление SQL или использование LINQ. К сожалению, я не знаю LINQ, но знаю SQL. Думаю, я смогу создать представление со всеми таблицами. Поэтому вопрос такой. Как я могу заменить эти значения идентификаторов фактическими данными, связанными с этими внешними ключами (userid, statusid)?
Вот снимок экрана с массовыми данными:
массовые данные
Подробнее здесь: https://stackoverflow.com/questions/380 ... ull-values
Мобильная версия