小编Mik*_*nes的帖子

传入枚举作为方法参数

我宣布了一个枚举:

public enum SupportedPermissions
{
    basic,
    repository,
    both
}
Run Code Online (Sandbox Code Playgroud)

我也有像这样的POCO:

public class File
{
    public string Id { get; set; }
    public string Name { get; set; }
    public string Description { get; set; }
    public SupportedPermissions SupportedPermissions { get; set; }      
}
Run Code Online (Sandbox Code Playgroud)

现在我想创建一个方法,我可以用它来创建一个新的File对象:

public string CreateFile(string id, string name, string description, Enum supportedPermissions)
{
    file = new File
    {  
        Name = name,
        Id = id,
        Description = description,
        SupportedPermissions = supportedPermissions.basic
    };

    return file.Id;
}
Run Code Online (Sandbox Code Playgroud)

我如何为枚举创建参数以及如何在我的伪代码中分配它,SupportedPermissions = supportedPermissions.basic …

c# enums

33
推荐指数
3
解决办法
10万
查看次数

使用'ObjectId'查询MongoDB

我已经将documents插入MongoDB而没有id.我想通过搜索默认分配的MongoDBObjectId来检索它们.

这是我的尝试 -

var query_id = Query.EQ("_id", "50ed4e7d5baffd13a44d0153");
var entity = dbCollection.FindOne(query_id);
return entity.ToString();
Run Code Online (Sandbox Code Playgroud)

我得到以下错误 -

发生了'System.NullReferenceException'类型的第一次机会异常

问题是什么?

.net c# mongodb mongodb-.net-driver

29
推荐指数
2
解决办法
4万
查看次数

Python的拼写检查器

我是Python和NLTK的新手.我正在忙于一个可以执行拼写检查的应用程序(用正确拼写的单词替换拼写错误的单词),我目前正在使用Python-2.7上的附魔库,PyEnchant和NLTK库.下面的代码是处理更正/替换的类.

from nltk.metrics import edit_distance

class SpellingReplacer(object):
    def __init__(self, dict_name = 'en_GB', max_dist = 2):
        self.spell_dict = enchant.Dict(dict_name)
        self.max_dist = 2

    def replace(self, word):
        if self.spell_dict.check(word):
            return word
        suggestions = self.spell_dict.suggest(word)

        if suggestions and edit_distance(word, suggestions[0]) <= self.max_dist:
            return suggestions[0]
        else:
            return word
Run Code Online (Sandbox Code Playgroud)

我编写了一个函数,它接受单词列表并对每个单词执行def替换并返回单词列表但拼写正确.

def spell_check(word_list):
    checked_list = []
    for item in word_list:
        replacer = SpellingReplacer()
        r = replacer.replace(item)
        checked_list.append(r)
    return checked_list

>>> word_list = ['car', 'colour']
>>> spell_check(words)
['car', 'color']
Run Code Online (Sandbox Code Playgroud)

现在我不喜欢这个,因为它不是很准确,我正在寻找一种方法来实现单词的拼写检查和替换.我还需要一些可以解决像"caaaar"这样的拼写错误的东西吗?有没有更好的方法来执行拼写检查?如果是这样,他们是什么?谷歌如何做到这一点,因为他们的拼写建议非常好?有什么建议

spell-checking nltk python-2.7 pyenchant

28
推荐指数
4
解决办法
10万
查看次数

一起使用MongoDB和Neo4j

我正在开始一个新项目,我正在寻找使用MongoDB作为文档存储工具和Neo4j作为映射文档之间关系的机制,然后我想通过rest API公开我的查询结果.人们会说这样做的优点和缺点是什么?是否有更好的方法可以使用不同的NoSQL文档存储来实现这一目标?有没有人可以在网上找到有人试图做类似事情的例子?

mongodb neo4j nosql

15
推荐指数
4
解决办法
9228
查看次数

使用Json.Net C#获取json对象中的值和键

嗨,我有json,看起来像这样:

{
    "Id": " 357342524563456678",
    "title": "Person",
    "language": "eng",
    "questionAnswer": [
        {
            "4534538254745646.1": {
                "firstName": "Janet",
                "questionNumber": "1.1"
            }
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

现在我编写了一些循环遍历questionAnswer数组中对象的代码,然后获取对象的名称4534538254745646.1.现在我试图保存每个项目的关键值和值,但我只是设法获得价值.

我该怎么做,这是我的代码:

JToken entireJson = JToken.Parse(json);
JArray inner = entireJson["questionAnswer"].Value<JArray>();


foreach(var item in inner)
{
     JProperty questionAnswerDetails = item.First.Value<JProperty>();
     //This line gets the name, which is fine
     var questionAnswerSchemaReference = questionAnswerDetails.Name;
     var properties = questionAnswerDetails.Value.First;

     //This only gets Janet
     var key = properties.First;
     var value = properties.Last;                                      
}
Run Code Online (Sandbox Code Playgroud)

所以目前我只能得到珍妮特,但我也想要名字字段.我想接受这个并添加到字典即

Dictionary<string, string> details = new …
Run Code Online (Sandbox Code Playgroud)

c# json json.net

14
推荐指数
1
解决办法
5万
查看次数

sudoers是世界可写的错误

我更改了Ubuntu 12.10上的/ ect文件权限,以便我可以编辑bash.bashrc以便neo4j可以看到JVM但是现在我在尝试运行neo4j服务器时遇到错误

我输入下面的代码,我设法编辑bash.bashrc,但现在我根本不能使用sudo!

sudo chmod -R ugo+rw /ect

sudo -u neo4j /home/neo4j-community-1.8/bin/neo4j start
sudo: /etc/sudoers is world writable
sudo: no valid sudoers sources found, quitting
sudo: unable to initialize policy plugin
Run Code Online (Sandbox Code Playgroud)

我读了一个论坛,一个人说我需要再次重新安装ubuntu,我希望事实并非如此?请帮忙!!

ubuntu sudo neo4j

12
推荐指数
1
解决办法
4万
查看次数

创建索引Nest

如何使用Elasticsearch Nest API重新创建以下索引?

这是索引的json,包括映射:

{
    "settings": {
        "analysis": {
            "filter": {
                "trigrams_filter": {
                    "type":     "ngram",
                    "min_gram": 3,
                    "max_gram": 3
                }
            },
            "analyzer": {
                "trigrams": {
                    "type":      "custom",
                    "tokenizer": "standard",
                    "filter":   [
                        "lowercase",
                        "trigrams_filter"
                    ]
                }
            }
        }
    },
    "mappings": {
        "data": {
        "_all" : {"enabled" : true},
            "properties": {
                "text": {
                    "type":     "string",
                    "analyzer": "trigrams" 
                }
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

这是我的尝试:

var newIndex = client.CreateIndexAsync(indexName, index => index
            .NumberOfReplicas(replicas)
            .NumberOfShards(shards)
            .Settings(settings => settings
                .Add("merge.policy.merge_factor", "10")
                .Add("search.slowlog.threshold.fetch.warn", "1s")
                .Add("mapping.allow_type_wrapper", true))
             .AddMapping<Object>(mapping …
Run Code Online (Sandbox Code Playgroud)

elasticsearch nest

9
推荐指数
2
解决办法
9346
查看次数

无法加载文件或程序集"Newtonsoft.Json.Net"(HRESULT异常:0x80131040)

当我们通过nuget安装了以前版本的Neo4jClient时,我们看到Newtonsoft.Json版本4.5.0.0作为依赖项安装.我们还使用需要版本6.0.0.0的Newtonsoft.Json的其他软件包,当我们安装它们时,它会覆盖版本4.5.0.0.

当我们启动应用程序时,我们收到此错误:

Unhandled Exception: System.ServiceModel.FaultException`1[System.ServiceModel.Ex
ceptionDetail]: Could not load file or assembly 'Newtonsoft.Json, Version=4.5.0.
0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed' or one of its dependencies.
The located assembly's manifest definition does not match the assembly referenc
e. (Exception from HRESULT: 0x80131040)
Run Code Online (Sandbox Code Playgroud)

我们查看了所有的配置,发现没有引用版本4.5.0.0,但是仔细看了一下Neo4jClient后我们发现了这个.

使用视觉学习工具中的ildasm.exe

这是packages.config

<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="AzureStorageClient" version="0.0.5.1829" targetFramework="net45" />
  <package id="CouchbaseNetClient" version="1.3.4" targetFramework="net45" />
  <package id="Elasticsearch.Net" version="1.0.0-beta1" targetFramework="net45" />
  <package id="Microsoft.Bcl" version="1.1.8" targetFramework="net45" />
  <package id="Microsoft.Bcl.Build" version="1.0.14" targetFramework="net45" />
  <package id="Microsoft.Net.Http" version="2.2.20" targetFramework="net45" />
  <package id="Neo4jClient" version="1.0.0.652" targetFramework="net45" />
  <package …
Run Code Online (Sandbox Code Playgroud)

c# json.net neo4jclient

9
推荐指数
1
解决办法
3万
查看次数

获取非隐藏单元格的最大值

我有一个有20行的表,该表取消隐藏在我的表上方单元格中指定的行数.因此,如果我将5放入单元格中,则20行中的5行将被取消隐藏.所以现在我想获得现在不隐藏的5个单元格的MAX.我该怎么做?

excel vba excel-vba

6
推荐指数
1
解决办法
1879
查看次数

无法连接到http:// localhost:8091/index.html

我刚刚使用我的Windows 7 64位机器上的setup.exe安装了CouchBase Server Enterprise v2.0.0,并且可能安装后基于浏览器的控制台会自动出现,但我得到的是无法连接:

**Firefox can't establish a connection to the server at localhost:8091.**
Run Code Online (Sandbox Code Playgroud)

我检查时CouchBase服务正在运行?我现在卸载并重新安装了几次?我在这里错过了什么吗?

couchbase

4
推荐指数
1
解决办法
1万
查看次数