Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/310.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将CouchDB与asp.net C#应用程序连接_C#_Asp.net Mvc_Couchdb - Fatal编程技术网

将CouchDB与asp.net C#应用程序连接

将CouchDB与asp.net C#应用程序连接,c#,asp.net-mvc,couchdb,C#,Asp.net Mvc,Couchdb,如何将couchDB与ASP.NET C#应用程序连接?如果有人能提供一个示例应用程序。安装NuGet后,只需创建MyCouch.Client的实例并将数据库的URL传递给它即可 using (var client = new MyCouchClient("http://127.0.0.1:5984/test")) { //Consume here } 格式为:{scheme}://[{username}:{password}]/{authority}/{localpath}。从v0.

如何将couchDB与ASP.NET C#应用程序连接?如果有人能提供一个示例应用程序。

安装NuGet后,只需创建MyCouch.Client的实例并将数据库的URL传递给它即可

using (var client = new MyCouchClient("http://127.0.0.1:5984/test"))
{
    //Consume here
}
格式为:
{scheme}://[{username}:{password}]/{authority}/{localpath}
。从v0.11.0开始,有一个特定的myCuchuriBuilder,您可以使用它来构建Uri。当调用
SetBasicCredentials
时,它将自动(例如)对用户名和密码应用
Uri.EscapeDataString

var uriBuilder = new MyCouchUriBuilder("http://localhost:5984/")
    .SetDbName(TestConstants.TestDbName)
    .SetBasicCredentials("foob@r", "p@ssword");

return new MyCouchClient(uriBuilder.Build());

更多细节

我也有同样的需求,在评估可用选项后,为了满足我的应用程序的要求,我创建了任何对我帮助很大的组件,也许它们可以帮助您和其他人。我明确表示,我无意在这里推销自己,只是分享一些可能有用的东西

有关如何配置和使用它的详细说明,请参见

链接:|

使用mango querie检索文档的示例:

IList<User> users;
var sts = new List<String> { "ACTIVE", "LOCKED" };
using (UserRepository db = new UserRepository())
{
    var query = db.FindOf("list-status", new { id = "OwnerIdloop.user.7", statuses = sts });
    users = db.List<User>(query);
}
Array.ForEach(users.ToArray(), Console.WriteLine);
IList用户;
var sts=新列表{“活动”、“锁定”};
使用(UserRepository db=newuserrepository())
{
var query=db.FindOf(“列表状态”,new{id=“OwnerIdloop.user.7”,status=sts});
用户=数据库列表(查询);
}
ForEach(users.ToArray(),Console.WriteLine);
添加文档的示例:

User user = createUser("email@email.com");
using (UserRepository db = new UserRepository())
{
    var result = db.Insert<User>(user); // add document and return instance changed with operation revision id
    Console.WriteLine(result.Revision);
}
using (UserRepository db = new UserRepository())
{
    // Load document data by ID
    var user = db.Get<User>("email@email.com");
    user.Name = user.Name + "::CHANGED";

    var result = db.Update<User>(user); // update document and return instance changed with operation revision id
    Console.WriteLine(result.Revision);
}
using (UserRepository db = new UserRepository())
{
    // Load document data by ID
    var user = db.Get<User>("email@email.com");

    var result = db.Delete<User>(user); // delete document from database. Return true case sucess or false case not deleted
    Console.WriteLine($"Sucesso: {result}");
}
User-User=createUser(“email@email.com");
使用(UserRepository db=newuserrepository())
{
var result=db.Insert(user);//添加文档并返回使用操作修订id更改的实例
控制台。写入线(结果。修订);
}
更改文档的示例:

User user = createUser("email@email.com");
using (UserRepository db = new UserRepository())
{
    var result = db.Insert<User>(user); // add document and return instance changed with operation revision id
    Console.WriteLine(result.Revision);
}
using (UserRepository db = new UserRepository())
{
    // Load document data by ID
    var user = db.Get<User>("email@email.com");
    user.Name = user.Name + "::CHANGED";

    var result = db.Update<User>(user); // update document and return instance changed with operation revision id
    Console.WriteLine(result.Revision);
}
using (UserRepository db = new UserRepository())
{
    // Load document data by ID
    var user = db.Get<User>("email@email.com");

    var result = db.Delete<User>(user); // delete document from database. Return true case sucess or false case not deleted
    Console.WriteLine($"Sucesso: {result}");
}
使用(UserRepository db=newuserrepository())
{
//按ID加载文档数据
var user=db.Get(“email@email.com");
user.Name=user.Name+“::已更改”;
var result=db.Update(user);//使用操作修订id更改了更新文档和返回实例
控制台。写入线(结果。修订);
}
删除文档的示例:

User user = createUser("email@email.com");
using (UserRepository db = new UserRepository())
{
    var result = db.Insert<User>(user); // add document and return instance changed with operation revision id
    Console.WriteLine(result.Revision);
}
using (UserRepository db = new UserRepository())
{
    // Load document data by ID
    var user = db.Get<User>("email@email.com");
    user.Name = user.Name + "::CHANGED";

    var result = db.Update<User>(user); // update document and return instance changed with operation revision id
    Console.WriteLine(result.Revision);
}
using (UserRepository db = new UserRepository())
{
    // Load document data by ID
    var user = db.Get<User>("email@email.com");

    var result = db.Delete<User>(user); // delete document from database. Return true case sucess or false case not deleted
    Console.WriteLine($"Sucesso: {result}");
}
使用(UserRepository db=newuserrepository())
{
//按ID加载文档数据
var user=db.Get(“email@email.com");
var result=db.Delete(user);//从数据库中删除文档。返回true case success或false case not deleted
WriteLine($“Sucesso:{result}”);
}
这有帮助吗?