小编joh*_*ose的帖子

String Concatenation Vs String Builder Append

所以......我有这个场景,我有一个Foreach循环,循环通过一个复选框列表来检查选中哪个.对于每个选中的复选框,我必须进行相当长的字符串连接,涉及30个平均长度为20个字符的不同字符串,然后将其作为HTTP请求发送出去.其中2个字符串取决于所选复选框的索引/值.

复选框列表的长度也可根据用户的数据而变化.我会说List的平均长度是20,但它可以达到50-60.因此,最糟糕的情况是执行整个字符串连接60次左右.

现在我通过'+'运算符使用简单的字符串连接来完成它,但我想知道使用Stringbuilder执行它是否会更快.当然,这意味着我必须在循环中创建一个Stringbuilder对象,或者在循环之前创建它,并在发出HTTP请求后调用Stringbuilder.Remove.

我感谢任何人可以就此问题分享任何见解.

编辑
感谢所有人的回复,所以从我收集的内容来看,这样做的最佳方式是:

 StringBuilder sb = new StringBuilder();
 foreach (CheckBox item in FriendCheckboxList)
 {
     if (item.Checked)
     {
         sb.Append(string1);
         sb.Append(string2);
         sb.Append(string3);
         .
         .
         .
         sb.Append(stringLast);

         SendRequest(sb.ToString());
         sb.Length = 0;
      }
  }
Run Code Online (Sandbox Code Playgroud)

c#

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

ASP.NET MVC路由和静态数据(即图像,脚本等)

如果我在ASP.NET MVC1(或2)Web应用程序中为静态资源请求资源,请说...图像或javascript文件或css文件... .NET框架是否尝试查看如果请求匹配路由列表...并最终找不到它的控制器?

例如.

资源:/Content/Images/Foo.png

此请求是否通过我的路由列表..无法将任何控制器/操作与此请求匹配,然后直接尝试该路径?

asp.net-mvc routing static-resource

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

Console.SetWindowPosition - >居中(每次)

我正在尝试将通过我的C-sharp代码执行的控制台窗口设置为每次生成代码时都居中.

我希望这是有道理的.

c#

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

需要使用另一个PDF文件作为背景水印从C#创建PDF文件

我正在寻找一个解决方案,允许我从C#创建一个PDF文件,它也可以合并为一个单独的静态PDF文件作为背景水印.

我正在开发一个允许用户创建其发票的PDF版本的系统.我没有尝试重新创建C#中的所有发票功能,而是认为最简单的解决方案是使用空白发票的PDF版本(从Adobe Illustrator创建)作为背景水印,并简单地在顶部覆盖动态发票详细信息.

我正在查看来自Data Dynamics的Active Reports,但看起来他们没有能力将报表叠加或合并到现有PDF文件中.

是否有任何其他.NET PDF报告产品具有这种能力?

c# pdf merge

6
推荐指数
3
解决办法
5477
查看次数

是否可以使用 PdfSharp/Migradoc 为所有页面设置背景图像?

我正在使用 PDFSharp/Migradoc 从我的 Web 应用程序生成 PDF,并且我已经设法为文档的第一页获取背景图像。

我首先在文档中创建一个部分,然后为其渲染图像。然后,我将文档内容写入同一节对象内的段落对象。

但是,我需要为文档中的所有后续页面显示不同的背景图像。

这可能吗?如果是这样,我该怎么办?

答案: 为了提供完整的答案,以下是使其正常工作的基本代码:

Section section = this.document.AddSection();

section.PageSetup.DifferentFirstPageHeaderFooter = true;
section.PageSetup.OddAndEvenPagesHeaderFooter = false;

Image firstPageImage = section.Headers.FirstPage.AddImage("firstPage.jpg");
// ...configure image...
Image otherPageImage = section.Headers.Primary.AddImage("everyOtherPage.jpg");
// ...configure image...
Run Code Online (Sandbox Code Playgroud)

c# pdfsharp migradoc

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

为什么#include指令在语句末尾没有分号?

在C中,分号(;)用于表示语句的结尾.为什么#include行不需要分号?

c include

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

IIS要求登录凭据

我在虚拟机上安装了此Windows Server,并且我在该虚拟机的IIS上有一个网站用于某些测试目的.这里的问题是,每当我想访问该网站时,该网站都会要求我提供一些用户名和密码.起初我不知道为什么,我尝试使用网站登录,但它没有奏效.然后我使用了虚拟机的登录,这就是它的工作原理.我的问题是,如何禁用它?该站点位于虚拟目录中,我将其放在"我的文档"中.起初我以为是这样但是当我将"我的文档"文件夹的安全性更改为共享时,它仍然一直要求我提供凭据.有任何想法吗?

iis

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

Exchange Web服务与Exchange ActiveSync(或者为什么在免费获得牛奶时购买牛奶?)

我已经多次看过这个问题,但到目前为止,答案非常机器人和令人失望:

EWS与EAS有什么区别?

现在,大多数网站都提供以下内容:"一个是移动设备协议,另一个是Web服务." 好吧,没有屎.这是真正的问题:

是什么阻止某人设置EWS的下降库,任何移动应用程序或操作系统都可以使用而不是向MS支付ActiveSync的每用户许可费用?EWS太贵了,因为它是SOAPy而不是RESTful吗?ActiveSync是否在缓存和一般逻辑方面做了更多的繁重工作?EAS是否具有EWS没有的功能(共享日历或其他一些功能?)是否真的只是移动操作系统需要确保支持Exchange 03?

我相信他们每个人都有更好的点,使他们与众不同,但我认为大多数人在问这个问题时会遇到的问题是"如果EWS可以做同样的事情,我为什么要支付EAS?如果我我愿意自己写客户端吗?"

exchange-server activesync exchangewebservices

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

仅匹配一次模式

我有一串

foo-bar-bat.bla
Run Code Online (Sandbox Code Playgroud)

我只想比赛 foo

我有缺陷的模式匹配都foobar

\w+(?=-.*\.bla)
Run Code Online (Sandbox Code Playgroud)

我该如何丢弃bar?甚至更好,之后如何停止匹配foo

regex lookahead find-occurrences

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

如何开始使用WebRTC?

我是WebRTC的初学者,我想知道是否有任何我需要导入才能使用JavaScript API.

webrtc

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