小编Joh*_*ers的帖子

计算十亿个元素列表中的唯一元素的最快方法是什么?

我的问题不常见.让我们想象几十亿字符串.字符串通常少于15个字符.在此列表中,我需要找出唯一元素的数量.

首先,我应该使用什么对象?你不应该忘记,如果我添加一个新的元素,我必须检查它是否已经存在于列表中.这在一开始并不是问题,但在几百万字后,它确实会减慢这个过程.

这就是为什么我认为Hashtable是这项任务的理想选择,因为检查列表理想情况下只有log(1).不幸的是.net中的单个对象只能是2GB.

下一步将实现一个包含2GB哈希表列表的自定义哈希表.

我想知道也许你们中的一些人知道更好的解决方案.(电脑规格极高.)

c# memory algorithm collections

30
推荐指数
3
解决办法
2449
查看次数

如何以编程方式获取IIS 7中的站点列表和虚拟目录?

有谁知道如何以编程方式获取IIS 7中的站点列表和虚拟目录?

.net c# iis-7

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

如何在.NET中读取XML?

XML noob在这里!所以我有一些xml数据:

<DataChunk>
    <ResponseChunk>
        <errors>
            <error code=\"0\">
                Something happened here: Line 1, position 1.
            </error>
        </errors>
    </ResponseChunk>
</DataChunk>
Run Code Online (Sandbox Code Playgroud)

如何获取"错误"列表,我可以访问"错误代码"和以下文本说明?另外,我在c#中使用.net4.0 ...谢谢!

c# xml

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

XML解析 - 读取简单的XML文件并检索值

我已经编写了一个用于学习目的的任务调度程序.目前我正在将计划任务保存为纯文本,然后使用Regex进行解析.这看起来很混乱(代码明智)并且不是非常连贯.

我想从XML文件加载计划任务,我已经搜索了很多,以找到一些解决方案,但我无法按照我想要的方式工作.

我写了一个像这样结构化的XML文件来存储我的数据:

<Tasks>
    <Task>
        <Name>Shutdown</Name>
        <Location>C:/WINDOWS/system32/shutdown.exe</Location>
        <Arguments>-s -f -t 30</Arguments>
        <RunWhen>
            <Time>8:00:00 a.m.</Time>
            <Date>18/03/2011</Date>
            <Days>
                <Monday>false</Monday>
                <Tuesday>false</Tuesday>
                <Wednesday>false</Wednesday>
                <Thursday>false</Thursday>
                <Friday>false</Friday>
                <Saturday>false</Saturday>
                <Sunday>false</Sunday>
                <Everyday>true</Everyday>
                <RunOnce>false</RunOnce>
            </Days>
        </RunWhen>
        <Enabled>true</Enabled>
    </Task>
</Tasks>
Run Code Online (Sandbox Code Playgroud)

我想解析数据的方式是这样的:

  1. 打开Tasks.xml
  2. 加载第一个Task标记.
  3. 在该任务中,检索Name,Location和Arguments标记的值.
  4. 然后打开RunWhen标记并检索时间和日期标记的值.
  5. 之后打开Days标记并检索其中每个标记的值.
  6. 检索Enabled的值.
  7. 加载下一个任务并重复步骤3 - > 7,直到解析了Tasks中的所有Task标记.

我非常肯定你可以这样做,我无法解决这个问题,因为有很多不同的方法可以用XML做事我有点不知所措.但到目前为止,我最有可能的是使用XPathDocument和XPathNodeIterator吗?

如果有人可以给我一个例子或向我解释如何做到这一点我会非常高兴.

.net c# xml parsing

30
推荐指数
2
解决办法
11万
查看次数

是否需要WCF的DataContract属性

我正在写WCF服务和他的客户端.我想在服务和客户端之间发送/接收我的自定义类的对象.

我有3个模块

  • WCF服务
  • WCF客户端
  • 公共类库

WCF服务和客户端都引用了公共类库.我不想用DataContract属性标记我的所有类.

所以,我的问题是"WCF需要DataContract属性吗?"

我使用.NET 4和netTcpBinding.

.net c# wcf serialization

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

如何在C#应用程序中集成d3.js图表​​?

我是Mike Bostock的d3.js图表​​库的忠实粉丝:d3js.org.

我想用它在C#.Net应用程序中显示图表,但我不知道是否可能.

可以通过生成HTM + JS代码并在webbrowser窗口中呈现它来实现.但是,我理解d3.js库不能在没有网络服务器的情况下在本地使用(但是我不明白没有网络服务器什么有用,什么需要网络服务器),因此一个简单的解决方案不起作用.

有没有人试图开发d3.js图表​​的那种部署?您是否知道如何开始以获得最简单的解决方案?

.net c# d3.js

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

从浏览器运行WCF方法

我在Visual Studio 2010中使用C#创建一个非常基本的WCF服务.我想知道是否可以通过键入以下内容直接从浏览器运行我的方法://localhost:49815/Service1.svc/methodName(parameterValue)?

这是我的代码的本质.

接口:

using ...
namespace WcfService1{   
    [ServiceContract]
    public interface IService1{
        [OperationContract]
        [WebGet]
        string echoWithGet(string s);
        [OperationContract]
        [WebInvoke]
        string echoWithPost(string s);
    }
}
Run Code Online (Sandbox Code Playgroud)

方法:

 public string echoWithGet(string s ){
            return "Get: "+s;
        }

 public string echoWithPost(string s){
            return "Post: " + s;
        }
Run Code Online (Sandbox Code Playgroud)

c# wcf

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

为什么WinForms标签不希望透明的原因?

为什么我不能将Label的BackColor设置为Transparent?我以前做过,但现在它只是不想......

我创建了一个新的UserControl,添加了一个进度条和一个标签.当我将标签的BackColor设置为透明时,它仍然是灰色的= /为什么会这样?

我想要的是将标签放在进度条的顶部,以便其文本"在"进度条中"...

c# transparency winforms

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

IIS 7日志请求正文

我需要记录对IIS发出的请求的请求后有效负载.是否可以使用IIS 7.5中现有的日志记录和高级日志记录模块来配置请求后有效负载的日志记录,或者任何人都可以将我引导到任何允许我记录后有效负载的自定义模块.

logging iis-7 request

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

是否可以在C#中返回对变量的引用?

我可以返回对double值的引用吗?

这就是我想要做的:

ref double GetElement()
{
   ......
   // Calculate x,y,z
   return ref doubleArray[x,y,z];
}
Run Code Online (Sandbox Code Playgroud)

要像这样使用它

void func()
{
   GetElement()=5.0;
}
Run Code Online (Sandbox Code Playgroud)

这就像在C++中返回一个双指针......我知道我写它的方式是错误的......但是有没有正确的方法呢?

c# reference return-value

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