C# 如何添加使用GET-to主干模型返回的字符串?
我有一个ApiController,它只返回表中的一列C# 如何添加使用GET-to主干模型返回的字符串?,c#,backbone.js,asp.net-web-api2,C#,Backbone.js,Asp.net Web Api2,我有一个ApiController,它只返回表中的一列 public IEnumerable<string> GetEmailConfig() { return dbContext.EmailConfig.Select(m => m.smtpHost).AsEnumerable(); } 我想我必须序列化字符串,但不确定如何序列化,或者这是否是问题所在。有什么建议吗 编辑: 我的模型 App.Models.EmailConfigModel = Backbone.Mod
public IEnumerable<string> GetEmailConfig()
{
return dbContext.EmailConfig.Select(m => m.smtpHost).AsEnumerable();
}
我想我必须序列化字符串,但不确定如何序列化,或者这是否是问题所在。有什么建议吗
编辑:
我的模型
App.Models.EmailConfigModel = Backbone.Model.extend({
parse: function(response, option)
{
var smtpHost = "";
console.log('parsing smtp host');
$.each(response, function (index, val) {
smtpHost = smtpHost + val;
});
return { "smtpHost": smtpHost };
}
});
我还尝试了返回{“attributeName”:smtpHost}代码>和“属性名”。没有一个奏效
这就是我如何从索引页获取数据的方法
App.emailconfig.fetch().then(function () {
new App.Views.EmailConfig({ collection: App.emailconfig });
});
这是我的收藏:
App.Collections.EmailConfig = Backbone.Collection.extend({
model: App.Models.EmailConfigModel,
url: 'api/EmailConfig',
});
编写一个parse方法,该方法返回一个对象{attributeName:stringReturnedFromService}
parse
,每当服务器在fetch和save中返回模型数据时都会调用该方法。函数被传递给原始响应对象,并应返回要在模型上设置的属性哈希
因此,在您的模型中编写一个解析函数,如
parse : function(response,option){
var mystr = "";
$.each($.parseJSON(response), function(index, val) {
mystr = mystr + val;
});
return {"attributenmae" : mystr};
}
我使用了您的函数,但未捕获类型错误:无法使用“in”运算符在[“smtp.xxx.xxx”]中搜索“15”。我更改了smtp主机。我假设您希望在主干模型中将属性另存为{“attributenmae”:“smtp.host”},对吗?当然,但您需要什么?模型、集合还是C#?我所做的与您在执行此操作的modelplace中所做的完全相同。我只是添加了我的模型、集合以及如何从索引页获取它。
parse : function(response,option){
var mystr = "";
$.each($.parseJSON(response), function(index, val) {
mystr = mystr + val;
});
return {"attributenmae" : mystr};
}