Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/22.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
CouchBase.NET sdk使用数据upsert和spring framwork findone null_.net_Spring_Couchbase - Fatal编程技术网

CouchBase.NET sdk使用数据upsert和spring framwork findone null

CouchBase.NET sdk使用数据upsert和spring framwork findone null,.net,spring,couchbase,.net,Spring,Couchbase,使用Couchbase SDK.NET(版本:2.2.2)和SpringFramework(版本:1.4.2.RELEASE) 测试用例 .NET Upsert->.NET GetDocument:成功 Spring Save->Spring FindOne:成功 Spring Save->.NET GetDocument:成功 4。NET Upsert->Spring FindOne:失败 为什么我不应该不知道。。。请帮帮我 .NET代码 var config = new Clie

使用Couchbase SDK.NET(版本:2.2.2)和SpringFramework(版本:1.4.2.RELEASE)

测试用例

  • .NET Upsert->.NET GetDocument:成功

  • Spring Save->Spring FindOne:成功

  • Spring Save->.NET GetDocument:成功

  • 4。NET Upsert->Spring FindOne:失败

    为什么我不应该不知道。。。请帮帮我

    .NET代码

        var config = new ClientConfiguration
        {
            Servers = new List<Uri>
            {
                new Uri("http://127.0.0.1:8091/pools")
            },
    
            Serializer = () => new JilSerializer()
        };
    
        using (var cluster = new Cluster(config))
        {
            IBucket bucket = null;
            try
            {
                bucket = cluster.OpenBucket("Test", "Test");
    
                cItemInfo TempClass = new cItemInfo();
                for (int i = 0; i < 3; i++)
                {
                    TestClass temp = new TestClass();
                    temp.var1 = i;
                    temp.var2 = i;
                    temp.var3 = ".NET Testing";
                    TempClass.test.Add(temp);
                }
                TempClass.result = 200;
    
                string jsonStr = JsonConvert.SerializeObject(TempClass);
    
                var document = new Document<cItemInfo>();
                document.Id = "TestClass_NET";
                document.Content = TempClass;
    
                var upsert = bucket.Upsert(document);
                if (upsert.Success)
                    Console.WriteLine("Success");
    
                Console.Read();
            }
            finally
            {
                if (bucket != null)
                {
                    cluster.CloseBucket(bucket);
                }
            }
        }
    
    var config=new ClientConfiguration
    {
    服务器=新列表
    {
    新Uri(“http://127.0.0.1:8091/pools")
    },
    序列化程序=()=>新的JilSerializer()
    };
    使用(var集群=新集群(配置))
    {
    IBucket bucket=null;
    尝试
    {
    bucket=cluster.OpenBucket(“测试”、“测试”);
    cItemInfo TempClass=新的cItemInfo();
    对于(int i=0;i<3;i++)
    {
    TestClass temp=新的TestClass();
    温度var1=i;
    温度var2=i;
    temp.var3=“.NET测试”;
    TempClass.test.Add(temp);
    }
    TempClass.result=200;
    字符串jsonStr=JsonConvert.SerializeObject(TempClass);
    var document=新文档();
    document.Id=“TestClass\u NET”;
    document.Content=TempClass;
    var upsert=bucket.upsert(单据);
    如果(插入成功)
    Console.WriteLine(“成功”);
    Console.Read();
    }
    最后
    {
    if(bucket!=null)
    {
    集群。闭桶(桶);
    }
    }
    }
    
    Spring框架代码

    // [WS_ItemInfo.java]
    @RequestMapping("GetItemInfoEx")
    public @ResponseBody C_ItemInfo  GetItemInfoEx() {
    
        C_ItemInfo item = itemInfo.getItemInfo("TestClass_NET");
    
        return item;
    }
    
    // [CS_ItemInfo.java]
    @Component
    public class CS_ItemInfo {
    
    @Autowired
    private CR_ItemInfo itemInfo;
    
    public void setItemInfo(C_ItemInfo item) {
        itemInfo.save(item);
    }
    
    public C_ItemInfo getItemInfo(String uID) {
        return itemInfo.findOne(uID);
    }
    
    public boolean getItemInfoExists(String uID) {
        return itemInfo.exists(uID);
    }
    }
    
    // [CR_ItemInfo.java]
    public interface CR_ItemInfo extends CrudRepository<C_ItemInfo, String> {
    
    }
    
    // [CouchbaseConfig.java]
    @EnableCouchbaseRepositories
    @Configuration
    public class CouchBaseConfig extends AbstractCouchbaseConfiguration {
    
        @Override
        protected List<String> bootstrapHosts() {
            return Arrays.asList("127.0.0.1");
        }
    
        @Override
        protected String getBucketName() {
            return "test";
        }
    
        @Override
        protected String getBucketPassword() {
            return "test";
        }
    
        @Bean
        public MappingCouchbaseConverter mappingCouchbaseConverter() throws Exception {
            MappingCouchbaseConverter converter = new MyMappingCouchbaseConverter(couchbaseMappingContext());
            converter.setCustomConversions(customConversions());
            return converter;
        }
    
        private class MyMappingCouchbaseConverter extends MappingCouchbaseConverter {
            public MyMappingCouchbaseConverter(
                    MappingContext<? extends CouchbasePersistentEntity<?>, CouchbasePersistentProperty> mappingContext) {
                super(mappingContext);
    
                typeMapper = new DefaultCouchbaseTypeMapper(null);
            }
        }
    }
    
    /[WS\u ItemInfo.java]
    @RequestMapping(“GetItemInfoEx”)
    public@ResponseBody C_ItemInfo GetItemInfoEx(){
    C_ItemInfo item=ItemInfo.getItemInfo(“TestClass_NET”);
    退货项目;
    }
    //[CS_ItemInfo.java]
    @组成部分
    公共类CS_ItemInfo{
    @自动连线
    私有CR_ItemInfo ItemInfo;
    公共无效setItemInfo(C_ItemInfo项){
    itemInfo.save(项目);
    }
    公共C_ItemInfo getItemInfo(字符串uID){
    返回itemInfo.findOne(uID);
    }
    公共布尔getItemInfoExists(字符串uID){
    returniteminfo.exists(uID);
    }
    }
    //[CR_ItemInfo.java]
    公共接口CR_ItemInfo扩展了Crudepository{
    }
    //[CouchbaseConfig.java]
    @EnableCouchbaseRepositories
    @配置
    公共类CouchBaseConfig扩展了AbstractCouchbaseConfiguration{
    @凌驾
    受保护列表bootstrapHosts(){
    返回数组.asList(“127.0.0.1”);
    }
    @凌驾
    受保护的字符串getBucketName(){
    返回“测试”;
    }
    @凌驾
    受保护的字符串getBucketPassword(){
    返回“测试”;
    }
    @豆子
    公共MappingCouchbaseConverter MappingCouchbaseConverter()引发异常{
    MappingCouchbaseConverter=新的MyMappingCouchbaseConverter(couchbaseMappingContext());
    setCustomConversions(customConversions());
    回流转换器;
    }
    私有类MyMappingCouchbaseConverter扩展了MappingCouchbaseConverter{
    公共MyMappingCouchbaseConverter(
    MappingContext,CouchbasePersistentProperty>MappingContext){
    super(mappingContext);
    typeMapper=新的DefaultCouchbaseTypeMapper(空);
    }
    }
    }
    
    Spring Data Couchbase 1.4.2基于“旧”一代SDK(Java SDK 1.4.2)。这一代不支持SDK之间的交叉兼容性,这是第二代SDK(属于.NET 2.2.2,但不属于Java 1.4.2)的重点


    第二代Spring Data Couchbase 2.0.x目前是,并且应该生成与.NET 2.2.2交叉兼容的文档。

    Spring Data Couchbase 1.4.2基于“旧”一代SDK(也包括Java SDK 1.4.2)。这一代不支持SDK之间的交叉兼容性,这是第二代SDK(属于.NET 2.2.2,但不属于Java 1.4.2)的重点


    第二代Spring数据Couchbase 2.0.x目前是并且应该生成与.NET 2.2.2交叉兼容的文档。

    您使用的是哪个版本的.NET SDK和Spring数据?Couchbase版本.NET:2.2.2 Springframework:1.4.2.Release在Spring端是否有任何错误或状态消息?哪个版本的.NET SDK和Spring数据您使用的是Spring数据吗?Couchbase版本.NET:2.2.2 Springframework:1.4.2.Release Spring端是否有任何错误或状态消息?