我的ouchbase数据存储区中有一个名为“TotalPosts”的 View 。设计文档名称为“统计”。
这是我的代码。我正在这里建立连接。
protected void Page_Load(object sender, EventArgs e)
{
try
{
var client= new CouchbaseClient();
Tasks objTasks = new Tasks();
foreach (Newtonsoft.Json.Linq.JToken jt in objTasks.GetAllStatistics())
{
if (jt["key"].ToString() == "Total")
{
dt.Rows[0]["Value"] = jt["value"].ToString();
}
if (jt["key"].ToString() == "Open")
{
dt.Rows[1]["Value"] = jt["value"].ToString();
}
if (jt["key"].ToString() == "Wah")
{
dt.Rows[2]["Value"] = jt["value"].ToString();
}
}
这是我的GetAllStatistics函数定义代码:
public IEnumerable<Newtonsoft.Json.Linq.JToken> GetAllStatistics()
{
var results = oCouchbase.GetView("Statistics", "TotalPosts");
return results;// I am getting the following error in this line
}
无法将类型“Couchbase.IView”隐式转换为“System.Collections.Generic.IEnumerable”。存在显式转换(您是否缺少 Actor 表?)
这是我的 map 代码:
function(doc) {
emit("Total", 1);
emit("TotalParticipants", doc.participants.length);
if(doc.status == "1"){
emit("Open", 1);
} else if(doc.status == "2") {
emit("Wah", parseInt(doc.wah_points));
}
}
这是我的减少代码:
function (key, values, rereduce) {
return sum(values);
}
我找不到合适的类型转换。请在这个问题上帮助我
最佳答案
我不能要求任何有关Couchbase的知识,但是错误消息表明您可以执行显式强制转换。您是否尝试过为返回做 Actor ?
return (Newtonsoft.Json.Linq.JToken)results;
关于c# - 使用Couchbase时发生类型转换错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12351980/