小编top*_*wik的帖子

我该如何优化这个正则表达式的性能?

我正在使用正则表达式将文本限定引号中未包含的逗号替换为制表符空格.我正在通过SSIS中的脚本任务运行文件内容的正则表达式.文件内容超过6000行.我看到了一个在文件内容上使用正则表达式的示例,看起来像这样

String FileContent = ReadFile(FilePath, ErrInfo);        
Regex r = new Regex(@"(,)(?=(?:[^""]|""[^""]*"")*$)");
FileContent = r.Replace(FileContent, "\t");
Run Code Online (Sandbox Code Playgroud)

那个替换可以理解地把它的甜蜜时间放在一个体面的文件上.

有没有更有效的方法来运行这个正则表达式?逐行读取文件并在每行运行正则表达式会更快吗?

.net c# regex optimization performance

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

AFNetworking没有建立正确的URL?

开始关注iOS并且需要Restful网络,所以我正在关注AFNetworking.我已经遵循了一些很好的例子,我想我理解如何使用它,但是构建的请求没有预期的URL.在AFHTTPClient requestWithMethod路径参数方法中,

po urlBase
$0 = 0x003b23b8 https://mysite.com/developer/api
(lldb) po url
$1 = 0x1eddf140 /users/current -- https://mysite.com/developer/api/
(lldb) po request
$2 = 0x1ed50580 <NSMutableURLRequest https://mysite.com/users/current>
Run Code Online (Sandbox Code Playgroud)

由于某种原因,开发人员部分被剥离.

我已经看到了传递给getPath方法的相对路径字符串有一个前导斜杠的例子,因此可以预期基本URL没有尾部斜杠但是我已经看到了人们在两者中都放斜线的例子.

我的基本网址是

NSString *const ServiceUrlBaseProduction  = @"https://mysite.com/developer/api/";
Run Code Online (Sandbox Code Playgroud)

以及获取当前用户的相对路径

@"/users/current";
Run Code Online (Sandbox Code Playgroud)

ios afnetworking

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

如何为UICollectionViewFlowLayout中的每个单元格添加标题/标签补充视图?

我见过的所有示例都使用补充视图作为页眉或页脚.我需要在流程布局中的每个单元格的上方和/或下方添加标签.

起初我认为我所要做的就是注册一个类以获得类型的补充视图,然后实现collectionViewForSupplementaryElementOfKindAtIndexPath,我会很高兴,但似乎开箱即用的FlowLayout只支持页眉和页脚.

苹果文档似乎暗示更多需要FlowLayout的子类化工作.

因为我不想重做苹果为流程布局所做的工作,并且因为我的单元格大小不同,所以我想扩展Flow Layout以支持每个单元格的supp视图.

我想我应该能够通过继承UICollectionViewFlowLayout来实现这一目标.

但我不知道如何告诉流程布局要求每个单元格的补充视图.只需为supp视图注册一个类,就不会强制布局调用layoutAttributesForSupplementaryViewOfKind.就目前而言,我的子类中永远不会调用它.我想如果我为一个支持视图注册一个类,它应该要求我的部分中的每个项目的视图...这似乎是一个不正确的假设.

我已经看到了一个很棒的自定义布局示例,其中使用NSDictionaries手动管理布局,但我不确定如何将该知识应用于内置流布局.

flowlayout ios ios6 uicollectionviewlayout uicollectionreusableview

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

为什么无法查看WCF服务的WSDL的内容?

当我导航到WCF svc页面https://mywebstie.project.com/myproject/myuploadservice.svc时,我按预期命中了svc,但是它提供的svcutil URL使用了实际的服务器名称;例如,而不是mywebsite.project.com URL。

当我按所提供的指向WSDL文件的链接时,浏览器中仅呈现文本https://mywebstie.project.com/myproject/myuploadservice.svc/SQLMembershipProvider。浏览器中的URL实际上是使用服务器名称而不是mywebstie.project.com。

WSDL XML的内容未呈现。

可能是什么问题?我没有更改客户端或服务器的配置,但是我的服务无法正常工作。

收到对https://mywebstie.project.com/myproject/myuploadservice.svc/SqlMembershipProvider的HTTP响应时发生错误。这可能是由于服务端点绑定未使用HTTP协议。这也可能是由于服务器终止了HTTP请求上下文(可能是由于服务关闭了)。有关更多详细信息,请参见服务器日志。

这是我的服务器配置

  <system.serviceModel>
    <behaviors>
      <serviceBehaviors>
        <behavior name="MembershipBehaviour">
          <serviceMetadata httpsGetEnabled="true" />
          <serviceCredentials>
            <serviceCertificate findValue="44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44"
              storeLocation="LocalMachine" storeName="My" x509FindType="FindByThumbprint" />
            <userNameAuthentication userNamePasswordValidationMode="MembershipProvider"
              membershipProviderName="SqlMembershipProvider" />
          </serviceCredentials>
        </behavior>
      </serviceBehaviors>
    </behaviors>
    <bindings>
      <wsHttpBinding>
        <binding name="SqlMembershipProvider">
          <security mode="TransportWithMessageCredential">
            <message clientCredentialType="UserName" />
          </security>
        </binding>
      </wsHttpBinding>
      <mexHttpsBinding>
        <binding name="mex" />
      </mexHttpsBinding>
    </bindings>
    <services>
      <service behaviorConfiguration="MembershipBehaviour" name="Test.Web.Services.MyUploadService"> …
Run Code Online (Sandbox Code Playgroud)

wcf wsdl endpoint

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

如何在MVC中使用我的Web引用?

问候伙计们,我需要在我的MVC应用程序中引用外部服务.

我正在使用此服务来验证我们的一个客户请求我们使用的身份验证令牌.

我正在将一个较旧的项目移植到MVC.我添加了一个Web引用.

配置生成如下:

<system.serviceModel>
<bindings>
    <basicHttpBinding>
        <binding name="ExternalServicesSoap" closeTimeout="00:01:00"
            openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
            allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
            maxBufferSize="65536" maxBufferPoolSize="524288" maxReceivedMessageSize="65536"
            messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered"
            useDefaultWebProxy="true">
            <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
                maxBytesPerRead="4096" maxNameTableCharCount="16384" />
            <security mode="None">
                <transport clientCredentialType="None" proxyCredentialType="None"
                    realm="" />
                <message clientCredentialType="UserName" algorithmSuite="Default" />
            </security>
        </binding>
    </basicHttpBinding>
</bindings>
<client>
    <endpoint address="http://myapps.test.com/ExternalServices/ExternalServices.asmx"
        binding="basicHttpBinding" bindingConfiguration="ExternalServicesSoap"
        contract="AssertionService.ExternalServicesSoap" name="ExternalServicesSoap" />
</client>
Run Code Online (Sandbox Code Playgroud)

在旧的ASP.NET世界中,我可以使用外部服务引用中定义的Assertion对象对我引用的特定服务执行以下操作.

        var service = new ExternalServices();
        Assertion assertion = service.Validate(Id);
        if(assertion.Valid){}
Run Code Online (Sandbox Code Playgroud)

这似乎不是MVC项目中的确切情况.我似乎正在与WCF合作.我不确定我是否在MVC世界中正确接近这一点.

我必须使用的是ExternalServiesSoap接口或ExternalServicesSoapChannel接口.其中没有一个像ASP.Net世界那样返回Assertion对象.它们都具有Validate方法但返回ValidateAssertionResponse.响应对象没有任何有用的属性; 只是一个回应机构.该断言类是仍然可以访问,但它似乎并没有受到任何的接口方法返回. …

model-view-controller wcf web-reference interface

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

我是否需要管理Android异步任务生命周期?

我是否需要在片段onDestroy事件中对asyncTask调用cancel,以防异步任务在用户点击后退按钮并离开活动时尚未完成?

我是否还需要检查我的asyncTask的现有实例是否仍在运行,以防上次访问fragmentActivity的asyncTask仍在运行,尚未完成或尚未取消?

android android-asynctask android-fragments android-fragmentactivity

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