【发布时间】:2014-05-06 08:08:40
【问题描述】:
我想用数据库中的数据填充我的autocomplete。
所以我用c#写了一个方法从db中读取:
public string[] GetNames()
{
var names = unitOfWork.deviceRepository.Get().Select(w=>w.Name);
return names.ToArray();
}
这很好用。所有需要的数据都在名称中。
现在我正在使用 Ajax 将这些数据发送到客户端:
$(function () {
var availableTags;
$.ajax({
url: "/DeviceUsage/GetNames",
type: "GET",
error: function (data) {
alert("wystąpił nieokreślony błąd " + data);
},
success: function (data) {
console.log(data);
availableTags = data;
}
})
$("#deviceName").autocomplete({
source: availableTags
});
});
如您所见,我将离开dataType 进行智能猜测。
但是成功的 console.log 在控制台中写入System.String[] 而不是来自GetNames 的数据。
谁能建议我如何修改我的代码以完成自动完成工作?
【问题讨论】:
-
使 GetNames WEB API 调用 JSONResult 的返回,并在返回之前将您的字符串数组转换为 JSON。 Ajax 不知道如何处理 C#/.Net CLR 类。
标签: c# jquery ajax asp.net-mvc jquery-ui