Вы можете создать Rest API или релакс-проект, используя ASP.NET MVC, и возвращать данные в виде JSON.
Примером функции контроллера будет:
public JsonpResult GetUsers(string userIds)
{
var values = JsonConvert.DeserializeObject<List<int>>(userIds);
var users = _userRepository.GetAllUsersByIds(userIds);
var collection = users.Select(user => new { id = user.Id, fullname = user.FirstName +" "+ user.LastName });
var result = new { users = collection };
return this.Jsonp(result);
}
public IQueryable<User> GetAllUsersByIds(List<int> ids)
{
return _db.Users.Where(c=> ids.Contains(c.Id));
}
Затем вы просто вызываете функцию GetUsers через обычную функцию AJAX, предоставляющую массив идентификаторов (в этом случае я использую jQuery stringify для отправки массива в виде строки и дематериализации его обратно в контроллер, но вы можете просто отправить массив Ints и получить его в виде массива int в контроллере). Я построил весь API Restful, используя ASP.NET MVC, который возвращает данные в виде междоменного json и который может быть использован из любого приложения. Это, конечно, если вы можете использовать ASP.NET MVC.
function GetUsers()
{
var link = '<%= ResolveUrl("~")%>users?callback=?';
var userIds = [];
$('#multiselect :selected').each(function (i, selected) {
userIds[i] = $(selected).val();
});
$.ajax({
url: link,
traditional: true,
data: { 'userIds': JSON.stringify(userIds) },
dataType: "jsonp",
jsonpCallback: "refreshUsers"
});
}