小编Seb*_*ian的帖子

如何将JObject反序列化为.NET对象

我很高兴使用Newtonsoft JSON库.例如,我将从JObject.NET对象创建一个,在这种情况下是一个Exception实例(可能是也可能不是子类)

if (result is Exception)
    var jobjectInstance = JObject.FromObject(result);
Run Code Online (Sandbox Code Playgroud)

现在我知道库可以将JSON文本(即字符串)反序列化为对象

// only works for text (string)
Exception exception = JsonConvert.DeserializeObject<Exception>(jsontext); 
Run Code Online (Sandbox Code Playgroud)

但我要找的是:

// now i do already have an JObject instance
Exception exception = jobjectInstance.????
Run Code Online (Sandbox Code Playgroud)

很明显,我可以从JObject背面转到JSON文本,然后使用反序列化功能,但这似乎是我的倒退.

.net serialization json exception json.net

216
推荐指数
2
解决办法
15万
查看次数

C#webclient和代理服务器

我在源代码中使用Web客户端类来使用http下载字符串.

这工作正常.但是,公司中的客户端现在都连接到代理服务器.而问题始于此.

当我测试我的应用程序时,我不认为它可以通过代理服务器,因为不断抛出的异常是"没有来自xxx.xxx.xxx.xxx的响应,这是代理服务器的IP地址.

但是,我仍然可以导航到网站URL,它在通过代理服务器连接时在浏览器中正确显示字符串,但在我使用我的Web客户端时却没有.

我必须配置Web客户端中的某些内容以允许我从代理服务器后面访问URL吗?

using (WebClient wc = new WebClient())
{
    string strURL = "http://xxxxxxxxxxxxxxxxxxxxxxxx";

    //Download only when the webclient is not busy.
    if (!wc.IsBusy)
    {
        string rtn_msg = string.Empty;
        try
        {
            rtn_msg = wc.DownloadString(new Uri(strURL));
            return rtn_msg;
        }
        catch (WebException ex)
        {
            Console.Write(ex.Message);
            return false;
        }
        catch (Exception ex)
        {
            Console.Write(ex.Message);
            return false;
        }
    }
    else
    {
        System.Windows.Forms.MessageBox.Show("Busy please try again");
        return false;
    }
}
Run Code Online (Sandbox Code Playgroud)

c# proxy webclient

34
推荐指数
5
解决办法
8万
查看次数

如何使用Java检查句子中是否存在单词?

我是编程和处理函数的新手,如果句子中出现一个单词,则返回true.我尝试了这种indexOf()方法,但后来我也遇到了这种方法的某个问题:

假设我的判决是 I am a, Java Programmer.

如果我们看一下这个词ram用的indexOf()方法,那么它将返回true因为ram存在Programmer而应该是正确的输出falseram不存在的词,但作为一种模式.

我该如何解决这个问题?我现在使用的代码是:

boolean isPresent(String word, String sentence)
{
    if(sentence.indexOf(word) >= 0)
        return true;
    else
        return false;
}
Run Code Online (Sandbox Code Playgroud)

注意:这个词ram只是一个例子来说明我当前的方法存在的问题之一.并不是我必须一直ram只能处理.这个词可以是任何类似的a,在上面的句子后面跟着一个逗号.

更新:感谢大家提供他们的意见和解决方案.我选择了一个作为一个被接受的答案(如果允许,会选择更多:-)),但很多都是有帮助的.

java pattern-matching

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

如何在.Net中实现ConcurrentHashSet

我试图在ConcurrentDictionary的精神中实现一个ConcurrentHashSet,采取的方法是使用内部支持ConcurrentDictionary并编写小的委托方法,这是我得到了多远,但很好的设置理论方法是我坚持,尤其是.我不确定我是否可以使用foreach并且仍然不违反并发性

public class ConcurrentHashSet<TElement> : ISet<TElement>
{
    private readonly ConcurrentDictionary<TElement, object> _internal;

    public ConcurrentHashSet(IEnumerable<TElement> elements = null)
    {
        _internal = new ConcurrentDictionary<TElement, object>();
        if (elements != null)
            UnionWith(elements);
    }

    public void UnionWith(IEnumerable<TElement> other)
    {
        if (other == null) throw new ArgumentNullException("other");

        foreach (var otherElement in other)
            Add(otherElement);
    }

    public void IntersectWith(IEnumerable<TElement> other)
    {
        throw new NotImplementedException();
    }

    public void ExceptWith(IEnumerable<TElement> other)
    {
        throw new NotImplementedException();
    }

    public void SymmetricExceptWith(IEnumerable<TElement> other)
    {
        throw new NotImplementedException();
    }

    public bool IsSubsetOf(IEnumerable<TElement> other)
    { …
Run Code Online (Sandbox Code Playgroud)

.net c# concurrency dictionary hashset

31
推荐指数
3
解决办法
2万
查看次数

HttpWebRequest.GetResponse在HTTP 304上抛出WebException

当Web服务器HttpWebRequest.GetResponse()使用HTTP 304(未修改)进行响应时,GetResponse()发生了a WebException,这对我来说非常奇怪.这是设计还是我错过了一些明显的东西?

.net http httpwebrequest http-status-code-304

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

有没有好的开源或免费提供的中文分词算法?

正如问题中的措辞,我正在寻找一个免费的和/或开源的中文文本分割算法,我确实理解这是一个非常难以解决的任务,因为有很多歧义.我知道有谷歌的API,但它确实是一个黑盒子,即没有太多关于它正在做什么的信息正在通过.

algorithm open-source cjk text-segmentation

28
推荐指数
2
解决办法
9456
查看次数

索引器的扩展方法,它们会好吗?

索引器的扩展方法,它们会好吗?

我正在玩一些重新补充POCO的代码.

代码迭代从SqlDataReader返回的行,并使用反射从列值分配属性.在我的调用堆栈中,我有一个像这样的代码: -

poco.Set("Surname", "Smith"); // uses extension method ...
Run Code Online (Sandbox Code Playgroud)

Set方法被编写为扩展方法.

能够编写这样的代码会很棒

poco["Surname"] = "Smith";  // extension methods for indexers ?
Run Code Online (Sandbox Code Playgroud)

即我想为索引器编写扩展方法

有没有充分的理由说.Net没有索引器的扩展方法?其他人对扩展方法索引器有其他好的用途吗?

如果我们可以为索引器编写扩展方法,那么我们可以编写这样的代码......

var poco = PocoFactory();  
    poco.Surname = “Smith”; // is this JavaScript ...
    poco[Surname] = “Smith” ; // … or is this c# or both
Run Code Online (Sandbox Code Playgroud)

我的代码中的一些片段

/////////////////////////////////////////////
// Client calling code
IDab dab = DabFactory.Create( "Northwind" );
string sql = @"select * from Customers ";
var persons = dab.ExecuteReader<NorthwindCustomer>(sql);
if (dab != null{
   Assert.That(persons[0].CustomerID , Is.EqualTo("ALFKI"));} …
Run Code Online (Sandbox Code Playgroud)

c# methods indexer data-access-layer

23
推荐指数
1
解决办法
7714
查看次数

是否会有针对.Net 4的MiscUtil的更新?

如果我没弄错的话,我想知道Jon Skeet维护的MiscUtil.是否会有.NET 4的更新,或者代码是否已经移动到其他地方了?我的意思是解决方案类型适用于VS 2008并且解决方案需要转换,但是如果已经在某个地方已经完成,我只是徘徊,为了便于打包我更喜欢wget"zipfile的路径"并且提取部署,因为我们的IT部门只有3个人,所以担心的问题越少越好.它只是一个边缘问题,图书馆本身到目前为止运作良好.

.net

13
推荐指数
1
解决办法
1946
查看次数

是否有正式的(理想的BNF)打字稿js语言语法(或只有打字稿子集)?

我正在寻找Typescript语法.不是解析器 - 词法分析器,而只是正式的语法描述.我想实现ts它的代码折叠和基本静态代码分析作为一个简单的Linux IDE for GNOME的插件.

bnf typescript

11
推荐指数
1
解决办法
3365
查看次数

输入Prolog

我目前正在开发一个递归的Prolog程序,将路线链接在一起,以创建伯明翰地区的基本 GPS.目前我可以得到输出:

输入

routeplan(selly_oak, aston, P).
Run Code Online (Sandbox Code Playgroud)

产量

P = [selly_oak, edgbaston, ... , aston]
Run Code Online (Sandbox Code Playgroud)

我想要做的是让我的程序提供某种界面,所以如果我要键入以下内容:

Route from selly_oak to aston
Run Code Online (Sandbox Code Playgroud)

它会为我提供:

Go from selly_oak to edgbaston
Go from edgbaston to ...
Finally, Go from ... to aston.
Run Code Online (Sandbox Code Playgroud)

Prolog是一种强大的语言,因此我认为这很容易实现,但是我所采用的许多书籍似乎都跳过了这一部分.据我所知,我必须使用write()和read()的内容,尽管我不知道细节.

有没有人可以在Prolog新手中找到一些基本的例子或链接到更多信息?

编辑:很多这些答案看起来非常复杂,解决方案应该只有大约5-10行代码.读取值不是问题,因为我可以按照以下方式执行操作:

find:- 
    write('Where are you? '), 
    read(X), 
    nl, write('Where do you want to go? '),
    read(Y), 
    loopForRoute(X,Y).
Run Code Online (Sandbox Code Playgroud)

如果可以使用write()写出输出,我更喜欢它,因此可以使用新行(nl),以便它显示为上面的输出.

如果这是我的输入,那么我如何安排顶部routeplan()来处理这些输入?另外,如果我要将这些电台的线路作为额外参数添加,那么它将如何实施呢?所有链接都在文件的开头定义,如下所示:

rlinks(selly_oak, edgbaston, uob_line).
rlinks(edgbaston, bham_new_street, main_line).
Run Code Online (Sandbox Code Playgroud)

因此,有了这些信息,能够如此读取该行是一件好事.

Go from selly_oak to edgbaston using the uob_line
Go from edgbaston to ... …
Run Code Online (Sandbox Code Playgroud)

mapping prolog dcg

8
推荐指数
2
解决办法
6231
查看次数