У меня есть пара решений (скорее назовите их хаки), но я ищу элегантные решения проблемы. Вот проблема, пожалуйста, пройдите медленно
Я получил WebMethods
на странице index.aspx
, на которую отправляются запросы ajax (create
, update
, delete
). один веб-метод не может обрабатывать все эти виды операций , поэтому для модели Person
существует 3 метода, а именно
CreatePerson (attributes)
UpdatePerson (attributes)
DeletePerson(personId)
следовательно, я использую хакерский процесс, как показано ниже, имена функций javascript соответствуют соответствующим методам на сервере
CreatePerson:function(){
model.url = "/CreatePerson";
},
UpdatePerson:function(){
model.url = "/UpdatePerson";
},
DeletePerson:function(){
model.url = "/DeletePerson";
}
описанные выше методы объявляются в представлениях, которые отображают модель Person. urlRoot для модели - index.aspx
, следовательно, вызовы ajax будут перенаправлены на метод CreatePerson внутри index.aspx при выполнении операции create i.e index.aspx / CreatePerson
Если я делегирую функцию Sync, она переопределит все модели в приложении js, чего я не хочу.
Вопрос
Можно ли как-нибудь подготовить URL-адрес в соответствии с конечной точкой модели, прежде чем будет сделан запрос ajax при использовании Backbone.js со страницами asp.net?