Я пытаюсь опубликовать сложный объект, включающий несколько списков/массивов строк, с помощью ajax-вызова jQuery. Кажется, сопоставляются только скалярные свойства объекта, а не массивы.
Я немного поискал, но не смог найти никаких примеров или решений для этого конкретного сценария.
Метод веб-API:
[HttpPost]
public IHttpActionResult Save(MenuSearchGuideEntry model)
{
//Do stuff
return Ok("");
}
Объект MenuSearchGuideEntry:
[Table("MENUSOEGNING_GUIDE")]
public class MenuSearchGuideEntry
{
[Key]
[Column("RAEKKEID")]
[Display(Name="Række id")]
public Decimal RowId { get; set; }
[Display(Name = "Label id")]
[Column("LABELID")]
public int? LabelId { get; set; }
[Column("ACTION")]
[Display(Name = "Action")]
public string JsonAction { get; set; }
[Column("FORCESEARCH")]
[Display(Name = "Tving søgning")]
public bool ForceSearch { get; set; }
[Column("ORD")]
[Display(Name = "Søgeord")]
public string SearchKeysString { get; protected set; }
public List SearchKeys
{
get
{
return ToStringList(SearchKeysString, ' ');
}
set
{
SearchKeysString = value.Aggregate((a, b) => a + " " + b);
}
}
[Column("SKJULTEFIRMAER")]
[Display(Name = "Skjulte firmaer")]
public string HiddenCompaniesString { get; protected set; }
public List HiddenCompanies
{
get
{
return ToStringList(HiddenCompaniesString, ' ');
}
set
{
HiddenCompaniesString = value.Aggregate((a, b) => a + " " + b);
}
}
[Column("SKJULTEDOMAENER")]
[Display(Name = "Skjulte domæner")]
public string HiddenDomainsString { get; protected set; }
public List HiddenDomains
{
get
{
return ToStringList(HiddenDomainsString, ' ');
}
set
{
HiddenDomainsString = value.Aggregate((a, b) => a + " " + b);
}
}
[Column("PRIORITET")]
[Display(Name = "Prioritet")]
public int? Priority { get; set; }
private List ToStringList(string separatedString, char separator)
{
return string.IsNullOrEmpty(separatedString)
? new List()
: eparatedString.Split(separator).ToList();
}
}
Вызов Ajax jQuery:
function ajaxPost(data, url, redierctUrl) {
$.ajax({
url: url,
data: JSON.stringify(data),
type: 'POST',
contentType: 'application/json',
success: function () {
window.location.href = redierctUrl;
},
error: function (msg) {
}
});
}
объект, опубликованный через Ajax:
{
"RowId":"1920",
"priority":"",
"labelId":"9999",
"forcesSearch":"False",
"jsonAction":"KBA TEST",
"SearchKeys":["ZZZ","YYY","XXX"],
"HiddenDomains":["VAU","THG","MEK",""],
"HiddenCompanies":["MGM"]
}
Подробнее здесь: https://stackoverflow.com/questions/420 ... -web-api-2
Как опубликовать сложный объект, включая списки, в ASP Web API 2 ⇐ Jquery
Программирование на jquery
-
Anonymous
1718983658
Anonymous
Я пытаюсь опубликовать сложный объект, включающий несколько списков/массивов строк, с помощью ajax-вызова jQuery. Кажется, сопоставляются только скалярные свойства объекта, а не массивы.
Я немного поискал, но не смог найти никаких примеров или решений для этого конкретного сценария.
Метод веб-API:
[HttpPost]
public IHttpActionResult Save(MenuSearchGuideEntry model)
{
//Do stuff
return Ok("");
}
Объект MenuSearchGuideEntry:
[Table("MENUSOEGNING_GUIDE")]
public class MenuSearchGuideEntry
{
[Key]
[Column("RAEKKEID")]
[Display(Name="Række id")]
public Decimal RowId { get; set; }
[Display(Name = "Label id")]
[Column("LABELID")]
public int? LabelId { get; set; }
[Column("ACTION")]
[Display(Name = "Action")]
public string JsonAction { get; set; }
[Column("FORCESEARCH")]
[Display(Name = "Tving søgning")]
public bool ForceSearch { get; set; }
[Column("ORD")]
[Display(Name = "Søgeord")]
public string SearchKeysString { get; protected set; }
public List SearchKeys
{
get
{
return ToStringList(SearchKeysString, ' ');
}
set
{
SearchKeysString = value.Aggregate((a, b) => a + " " + b);
}
}
[Column("SKJULTEFIRMAER")]
[Display(Name = "Skjulte firmaer")]
public string HiddenCompaniesString { get; protected set; }
public List HiddenCompanies
{
get
{
return ToStringList(HiddenCompaniesString, ' ');
}
set
{
HiddenCompaniesString = value.Aggregate((a, b) => a + " " + b);
}
}
[Column("SKJULTEDOMAENER")]
[Display(Name = "Skjulte domæner")]
public string HiddenDomainsString { get; protected set; }
public List HiddenDomains
{
get
{
return ToStringList(HiddenDomainsString, ' ');
}
set
{
HiddenDomainsString = value.Aggregate((a, b) => a + " " + b);
}
}
[Column("PRIORITET")]
[Display(Name = "Prioritet")]
public int? Priority { get; set; }
private List ToStringList(string separatedString, char separator)
{
return string.IsNullOrEmpty(separatedString)
? new List()
: eparatedString.Split(separator).ToList();
}
}
Вызов Ajax jQuery:
function ajaxPost(data, url, redierctUrl) {
$.ajax({
url: url,
data: JSON.stringify(data),
type: 'POST',
contentType: 'application/json',
success: function () {
window.location.href = redierctUrl;
},
error: function (msg) {
}
});
}
объект, опубликованный через Ajax:
{
"RowId":"1920",
"priority":"",
"labelId":"9999",
"forcesSearch":"False",
"jsonAction":"KBA TEST",
"SearchKeys":["ZZZ","YYY","XXX"],
"HiddenDomains":["VAU","THG","MEK",""],
"HiddenCompanies":["MGM"]
}
Подробнее здесь: [url]https://stackoverflow.com/questions/42000210/how-to-post-complex-object-including-lists-to-asp-web-api-2[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия