Вы можете прочитать конфигурационный раздел в стороне сервера код и получить его через $http.get
. Это лучшее решение.
Вы должны написать метод в своем MVC ApiController (это может быть MVC Action
). Что-то вроде:
[Route("settings/{key}")]
[HttpGet]
public HttpResponseMessage GetSetting(string key)
{
try
{
return Request.CreateResponse(HttpStatusCode.OK,
System.Configuration.ConfigurationManager.AppSettings[key]);
}
catch (Exception ex)
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex)
}
}
И в вашей угловой службы:
app.service('utilsService', utilsService);
utilsServcie.$inject = ['$http'];
function utilsServcie($http){
this.readServerProperty = function(key){
$http.get('/api/v1/settings/' + key).then(
function(response){
return response.data;
},
function(error){
alert(error.data.message);
}
);
}
}
И вы можете использовать эту услугу в требуемом месте, как это:
app.controller('MainController', MainController);
MainController.$inject = ['utilsServcie'];
function MainController(utilsServcie){
var vm = this;
utilsServcie.readServerProperty('SampleTemplate').then(function(path){
vm.path = path;
});
}
А на ваш взгляд:
<div ng-controller="MainController as mc">
<a ng-href= "mc.path"> Edit Template</a>
</div>
Ну, я написал al l этого из памяти, поэтому возможны небольшие ошибки, но вы можете поймать эту идею.
Это все люди. : D
Сделать вызов ajax с помощью '$ http', чтобы получить ключ конфигурации с сервера и присвоить значение ответа переменной' $ scope'. –