Javascript Breeze中EntityManager的服务名称是什么?
我只是不明白我必须为EntityManager设置什么作为服务名称 我有两个控制器:一个ApiController和一个“普通”控制器:Javascript Breeze中EntityManager的服务名称是什么?,javascript,asp.net-mvc,breeze,Javascript,Asp.net Mvc,Breeze,我只是不明白我必须为EntityManager设置什么作为服务名称 我有两个控制器:一个ApiController和一个“普通”控制器: [BreezeController] public class TournamentApiController : ApiController { private EFContextProvider<TournamentContext> _contextProvider; public TournamentApiControlle
[BreezeController]
public class TournamentApiController : ApiController
{
private EFContextProvider<TournamentContext> _contextProvider;
public TournamentApiController()
{
_contextProvider = new EFContextProvider<TournamentContext>();
}
[HttpGet]
public string Metadata()
{
return _contextProvider.Metadata();
}
[HttpGet]
public IQueryable<Tournament> Tournaments()
{
return _contextProvider.Context.Tournaments;
}
[HttpGet]
public IQueryable<Team> Teams()
{
return _contextProvider.Context.Teams;
}
}
public class TournamentController : Controller
{
public ActionResult Index()
{
return PartialView();
}
public ActionResult Details()
{
return PartialView();
}
}
API控制器:
[BreezeController]
public class TournamentApiController : ApiController
{
private EFContextProvider<TournamentContext> _contextProvider;
public TournamentApiController()
{
_contextProvider = new EFContextProvider<TournamentContext>();
}
[HttpGet]
public string Metadata()
{
return _contextProvider.Metadata();
}
[HttpGet]
public IQueryable<Tournament> Tournaments()
{
return _contextProvider.Context.Tournaments;
}
[HttpGet]
public IQueryable<Team> Teams()
{
return _contextProvider.Context.Teams;
}
}
public class TournamentController : Controller
{
public ActionResult Index()
{
return PartialView();
}
public ActionResult Details()
{
return PartialView();
}
}
在我的dataservice.js文件中:
app.dataservice = (function (breeze) {
breeze.config.initializeAdapterInstance("modelLibrary", "backingStore", true);
var serviceName = '/TournamentApi'; // What exactly do I need to set here?
// *** Cross origin service example ***
//var serviceName = 'http://todo.breezejs.com/breeze/todos'; // controller in different origin
var manager = new breeze.EntityManager(serviceName);
// manager.enableSaveQueuing(true);
var dataservice = {
getAllTournaments: getAllTournaments,
};
return dataservice;
/*** implementation details ***/
function getAllTournaments() {
var query = breeze.EntityQuery
.from("Tournament");
return manager.executeQuery(query);
}
})(breeze);
有人能解释一下服务名称的含义吗?因此,我应该使用什么作为服务名称?服务名称标识服务端点,即到Web API控制器的路由。这将是用于与服务器通信的URL的根。因此,如果查询“团队”和“锦标赛”的实际端点是
http://foo/bar/tournamentApp/teams ...
http://foo/bar/tournamentApp/tournaments ...
那么您的服务名称将是
"foo/bar/tournamentApp"
非常感谢。因此,它只是具有微风属性的APIController的路径。