小编Mar*_*rco的帖子

string.Replace 或 stringBuilder.Replace()

我是 C# 新手,所以请原谅我的错误。

我想在每次调用该代码段时替换字符串的某些部分(每次调用 2-4 次)。我想知道就性能而言使用哪种方法更好:string.ReplacestringBuilder.Replace()

如果这段代码被并发调用 10.000 次会怎样?

c# string stringbuilder

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

字节串到字节数组c#

在我的Web应用程序中,我连接到Web服务.在我的Web服务中,它有一个根据路径获取报告字节的方​​法:

public byte[] GetDocument(string path)
{
   byte[] bytes = System.IO.File.ReadAllBytes(path);
   return bytes;
}
Run Code Online (Sandbox Code Playgroud)

现在,当我从我的Web应用程序发出请求时,Web服务给了我一个Json对象,类似于:

{
  "Report":"0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/CQAGAAAAAAAAAAAA
   AAACAAAA3QAAAAAAAAAAEAAA3wAAAAEAAAD+ ... (continues)" 
}
Run Code Online (Sandbox Code Playgroud)

在我的Web应用程序中,我有一个获取Json对象的方法,将"report"放在一个字符串中.然后,Web应用程序有一个方法将字符串解析为字节数组,这不起作用,它抛出一个FormatException:

public byte[] DownloadReport(string id, string fileName)
{
    var fileAsString = _api.DownloadReport(id, fileName);
    byte[] report = fileAsString.Split()
                                .Select(t => byte.Parse(t, NumberStyles.AllowHexSpecifier))
                                .ToArray();
    return report;
}
Run Code Online (Sandbox Code Playgroud)

我也试过这样做:

public byte[] DownloadReport(string id, string fileName)
{
   var fileAsString = _api.DownloadReport(id, fileName);
   byte[] report = Encoding.ASCII.GetBytes(fileAsString);
   return report;
}
Run Code Online (Sandbox Code Playgroud)

这给了我一个.doc文件,其中包含与Json对象完全相同的字符串.

我是从Web服务解析错误的方法,还是我想再次将其转换为字节数组?

c# byte json

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

使用jquery阻止特定链接

在图库中,我想阻止某些缩略图通过灯箱扩展其原始图片.图像没有ID,只有一个类.所有链接都从数据库中的表中读取.

$(document).ready(function(){
            if($('.product-image').attr('target', 'blockedpath')) {
                $('.product-image').click(function(e) {
                    e.preventDefault();
                    return false;
                });
            }
        }); 


<li class="product">
            <div class="productInfo">
                <h3>@i.ToString()</h3>
                <a href="@Href("~/Images/2013/" + i.ToString() + ".jpg")" rel="lightbox" class="link">
                    <img class="product-image" src="@Href("~/Images/2013/Thumbnails/" + i.ToString() + ".jpg")" alt="foto" />
                </a>
            </div>
        </li>
Run Code Online (Sandbox Code Playgroud)

如果我使用它,所有缩略图都会被阻止.如何防止仅阻止图片并避免阻止缩略图.是否可以保存所有应该在数组中阻塞的图像并循环遍历该数组以阻止这些缩略图?

html javascript jquery

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

检查字符串是否包含字典键 - >删除键并添加值

我被困在一个检查字符串('14534000000875e')的函数中,如果它包含一个字母.如果它包含一个字母(az),请删除该字母并在末尾添加一个字符串.

为了实现这一点,我创建了一个Dictionary<char, string>Pairs,它已映射到09001,b到09002 [...]和z到09026

到目前为止这是我的代码:

public static string AlterSerial(string source)
{
    Dictionary<char, string> pairs = new Dictionary<char, string>();
    pairs.Add('a', "09001");
    ...

    int index = source.IndexOf(x);
    if (index != -1)
    {
        return source.Remove(index, 1);
    }
    return source;
}
Run Code Online (Sandbox Code Playgroud)

如何检查source字符串是否包含26个密钥中的一个,删除此密钥并将相应的字符串添加到源字符串的末尾?

注意:字母并不总是在源的末尾.

亲切的问候

c# linq generic-collections

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

Linq结果以不同的顺序显示

我目前正忙着使用AdventureWorks示例数据库和LinqPad来解决一些想法.

这是有问题的查询:

SalesOrderHeaders.GroupBy (soh => new {soh.CustomerID, soh.BillToAddressID})
                 .Where(soh => soh.Skip(1).Any())
                 .Dump();
Run Code Online (Sandbox Code Playgroud)

我们的想法是根据某些标准找到重复项,然后显示除第一组数据之外的重复项.应从表中删除结果.

执行查询后,我得到结果A) 第一个结果

再次执行查询后,我得到结果B) 在此输入图像描述

我不关心查询的正确结果,而是关于结果集的排序.只存在这两种可能性,并且它们在查询的每次运行中都是交替的.当然我可以按Key订购,但我更感兴趣的是为什么会发生这种情况呢?为什么订单是chaning/altern?

c# linq linqpad linq-to-sql

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

ToDictionary 错误“无法将 [] 索引应用于‘方法组’类型的表达式”

我的 ASP.NET MVC Web 应用程序中有以下代码:-

 public void syncWithEX()
 {
     var EXresource = entities.Resources.Select(g => new
     {
         EXID = g.RESOURCEID,
         CurrentEXSiteID = g.ResourceLocation.SITEID
     }).ToDictionary(a => a.EXID, a => a.CurrentEXSiteID);
     var technology = ITSys.Technologies.Select(g => new
     {
          ID = g.TechnologyID,
          EXID = g.EXID
     }).ToDictionary(a => a.ID, a => a.EXID);

     var server = ITSys.ITSYSServers.Where(a => !a.Technology.IsDeleted && a.Technology.IsCompleted);
     foreach (var s in server)
     {
          long? EXid = technology[s.ITSYSServerID];
          if (EXresource.ContainsKey[EXid.Value] )
          {
              long? CurrentEXsiteid = EXresource[EXid.Value];
              if (CurrentEXsiteid != s.EXSiteID)
              {
                   s.EXSiteID = …
Run Code Online (Sandbox Code Playgroud)

c# asp.net asp.net-mvc entity-framework

0
推荐指数
1
解决办法
1258
查看次数