小编Eri*_*ver的帖子

是否可以更改RESX生成器以在生成的类上使用公共访问器?

我正在编写ASP.NET MVC应用程序并尝试使用RESX文件来存储错误消息和其他常见字符串.问题是RESX生成器构建内部类,并且不可能使用如下语法在ASP.NET HTML代码中使用它们:

<%= Resources.SomeString %>
Run Code Online (Sandbox Code Playgroud)

是否可以调整设置以使RESX生成器构建可公开访问的类和属性?

.net

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

更有效的正则表达式或替代方案?

我有一个超过一百万行的文件.

 {<uri::rdfserver#null> <uri::d41d8cd98f00b204e9800998ecf8427e> <uri::TickerDailyPriceVolume> "693702"^^<xsd:long>}
 {<uri::rdfserver#null> <uri::d41d8cd98f00b204e9800998ecf8427e> <uri::TickerDailyPriceId> <uri::20fb8f7d-30ef-dd11-a78d-001f29e570a8>}
Run Code Online (Sandbox Code Playgroud)

每一行都是一个声明.

struct Statement
    string C;
    string S;
    string P;
    string O;
    string T;
Run Code Online (Sandbox Code Playgroud)

目前我在while循环中使用TextReader并使用正则表达式解析每一行:

Regex lineParse = new Regex(@"[^<|\""]*\w[^>\""]*", RegexOptions.Singleline | RegexOptions.Compiled);
Run Code Online (Sandbox Code Playgroud)

这个解析需要很长时间,我希望有人能指出我更有效的解析策略.

有些行有5个匹配,有些行有4个.以下是每行的解析方式:

{<uri::rdfserver#null> <uri::d41d8cd98f00b204e9800998ecf8427e> <uri::TickerDailyPriceVolume> "693702"^^<xsd:long>}

Statement()
    C = uri::rdfserver#null
    S = uri::d41d8cd98f00b204e9800998ecf8427e
    P = uri::TickerDailyPriceVolume
    O = 693702
    T = xsd:long

{<uri::rdfserver#null> <uri::d41d8cd98f00b204e9800998ecf8427e> <uri::TickerDailyPriceId> <uri::20fb8f7d-30ef-dd11-a78d-001f29e570a8>}

Statement()
    C = uri::rdfserver#null
    S = uri::d41d8cd98f00b204e9800998ecf8427e
    P = uri::TickerDailyPriceId
    O = uri::20fb8f7d-30ef-dd11-a78d-001f29e570a8
Run Code Online (Sandbox Code Playgroud)

评论中的其他信息:"我看到的糟糕表现实际上是由于我在代码中设置的条件断点.没有这个断点,一切都很快.如果有人有任何改进的想法,我会是感兴趣的是"-Eric Sc​​hoonover"

.net c# regex

4
推荐指数
2
解决办法
5128
查看次数

如何使用Silverlight GET HttpWebRequest设置标头?

只要我不向请求添加任何标头,就可以使用HttpWebRequest向Silverlight中的RESTful服务发出请求.

只要我使用这样的代码添加标题

var webReq = (HttpWebRequest)WebRequest.Create(new Uri(_RemoteAddress, "GetProviderMetadata"));
webReq.Method = HttpMethodType.Get;
webReq.Headers["SomeToken"] = "someTokenValue";
Run Code Online (Sandbox Code Playgroud)

一旦EndGetResponse()调用,我就会在问题的底部粘贴例外.有谁知道这是为什么?添加标头来获取请求似乎在正常的.NET中工作正常,所以我猜它是某种Silverlight限制,但我找不到任何澄清的文档.

   {System.NotSupportedException ---> System.NotSupportedException: Specified method is not supported.
  at System.Net.BrowserHttpWebRequest.InternalEndGetResponse(IAsyncResult asyncResult)
  at System.Net.BrowserHttpWebRequest.<>c__DisplayClass5.<EndGetResponse>b__4(Object sendState)
  at System.Net.AsyncHelper.<>c__DisplayClass2.<BeginOnUI>b__0(Object sendState)
  --- End of inner exception stack trace ---
  at System.Net.AsyncHelper.BeginOnUI(SendOrPostCallback beginMethod, Object state)
  at System.Net.BrowserHttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
  at System.Net.BrowserHttpWebRequest.<>c__DisplayClassd.<InvokeGetResponseCallback>b__b(Object state2)
  at System.Threading._ThreadPoolWaitCallback.WaitCallback_Context(Object state)
  at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
  at System.Threading._ThreadPoolWaitCallback.PerformWaitCallbackInternal(_ThreadPoolWaitCallback tpWaitCallBack)
  at System.Threading._ThreadPoolWaitCallback.PerformWaitCallback(Object state)}
   [System.NotSupportedException]: {System.NotSupportedException ---> System.NotSupportedException: Specified method is not supported.
  at System.Net.BrowserHttpWebRequest.InternalEndGetResponse(IAsyncResult …
Run Code Online (Sandbox Code Playgroud)

.net c# silverlight httpwebrequest

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

WCF - 客户端代理配置与服务web.config不匹配

我有一个简单的WCF服务,需要处理大数据流,所以我有很多配置值突然超过默认值.我最近一直在将所有代码转移到一个新的重组解决方案中,而我刚刚转移了这项服务.但是,当我尝试生成客户端代理(在VS2008中使用WCFTestClient.exe或"添加服务引用"时,客户端代理配置中的值与我为服务设置的值不匹配.

这是服务器配置 - 注意maxBufferSize,maxReceivedMessageSize,maxStringContentLength和MaxArrayLength的增加值

  <system.serviceModel>
    <bindings>    
      <basicHttpBinding>
        <binding name="default" maxBufferSize="5000000" maxReceivedMessageSize="5000000">
          <readerQuotas maxStringContentLength="5000000" maxArrayLength="5000000" />
          <!-- turn this setting on to require SSL/https -->
          <!-- <security mode="Transport" /> -->
        </binding>       
      </basicHttpBinding>
    </bindings>
    <behaviors>
      <serviceBehaviors>
        <behavior name="Consent.Service.SubjectConsentServiceBehavior">
          <serviceMetadata httpGetEnabled="true" />
          <serviceDebug includeExceptionDetailInFaults="true" />
        </behavior>
      </serviceBehaviors>
    </behaviors>
    <services>
      <service behaviorConfiguration="Consent.Service.SubjectConsentServiceBehavior"
        name="Consent.Service.SubjectConsentService">
        <endpoint address="" binding="basicHttpBinding" bindingConfiguration="default"
          contract="Consent.Service.ISubjectConsentService">
          <identity>
            <dns value="localhost" />
          </identity>
        </endpoint>
        <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
      </service>
    </services>
  </system.serviceModel>
Run Code Online (Sandbox Code Playgroud)

这是VS2008使用"添加服务参考"生成的代理

<system.serviceModel>
    <bindings>
        <basicHttpBinding>
            <binding name="BasicHttpBinding_ISubjectConsentService" closeTimeout="00:01:00"
                openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
                allowCookies="false" bypassProxyOnLocal="false" …
Run Code Online (Sandbox Code Playgroud)

.net configuration wcf web-services

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

当存在重叠匹配时,在正则表达式中匹配一个匹配?

我有一个匹配x OR y条件的正则表达式.有时这些匹配重叠,我想优先考虑其中一个条件.

这是我的测试用例.

正则表达式:

X[^\w]*\>|\>[^\w]*X
Run Code Online (Sandbox Code Playgroud)

输入:

汤> X>字母表
字母汤> X
X>字母汤

火柴:

突出显示的匹配结果http://i.friendfeed.com/b55db94551503bf13d16f944fc56d9ff56676b4f

第一个突出显示的匹配(黄色)应该是X>而不是> X但是我不确定如何给出重叠给出的匹配之一.

.net c# regex

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

这可以用Moq嘲笑吗?

我正在努力模拟一些外部依赖项,并且遇到一个第三方类的问题,它将构造函数作为另一个第三方类的实例.希望SO社区可以给我一些指导.

我想创建一个模拟实例,SomeRelatedLibraryClass它接受它的构造函数的一个模拟实例SomeLibraryClass.我怎么能这样嘲笑SomeRelatedLibraryClass

回购代码......

这是我在测试控制台应用程序中使用的Main方法.

public static void Main()
{
    try
    {
        SomeLibraryClass slc = new SomeLibraryClass("direct to 3rd party");
        slc.WriteMessage("3rd party message");
        Console.WriteLine();

        MyClass mc = new MyClass("through myclass");
        mc.WriteMessage("myclass message");
        Console.WriteLine();

        Mock<MyClass> mockMc = new Mock<MyClass>("mock myclass");
        mockMc.Setup(i => i.WriteMessage(It.IsAny<string>()))
            .Callback((string message) => Console.WriteLine(string.Concat("Mock SomeLibraryClass WriteMessage: ", message)));

        mockMc.Object.WriteMessage("mock message");
        Console.WriteLine();
    }
    catch (Exception e)
    {
        string error = string.Format("---\nThe following error occurred while executing the snippet:\n{0}\n---", e.ToString());
        Console.WriteLine(error);
    }
    finally
    {
        Console.Write("Press …
Run Code Online (Sandbox Code Playgroud)

.net c# unit-testing moq mocking

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

JavaScript有条件地覆盖类方法

我有一个我定义的类,我在我的应用程序中使用.我有一个页面,我想更改覆盖该类的所有实例上的一些方法.这是一些代码来说明.

MyClass的-的script.js

var MyClass = new Class({
    foo: function() {
        return 1;
    },

    bar: function() {
        return this.foo() + 9;
    },
});
Run Code Online (Sandbox Code Playgroud)

变化MyClass的-的script.js

MyClass.implement({
    foo: function() {
        return this.parent() * -1;
    },
});
Run Code Online (Sandbox Code Playgroud)

如果我在页面上包含myclass-script.js,我应该看到:

var test = new MyClass();
test.bar() === 10; //true
Run Code Online (Sandbox Code Playgroud)

如果我包含myclass-script.js然后更改-myclass-script.js,我应该看到:

var test = new MyClass();
test.bar() === 8; //true
Run Code Online (Sandbox Code Playgroud)

我遇到的问题是MyClass.implement适用于MyClass的所有实例,但它没有"覆盖"该方法,它取代了它.所以this.parent()调用失败,因为该方法没有父级.如果我做MyClass.extend它不适合我想要的,我没有看到MyClass的实例调用重写方法.

javascript mootools

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

MVC中的数字/日期转换助手,在哪里使用它们?

Stackoverflow是建立在MVC上的,并且做了一堆简单但很好的事情,包括日期和数字(回答计数,投票等等).我假设这完成了几个静态助手类.

我的问题是视图应该调用这些辅助对象还是控制器应该调用这些辅助对象并将结果嵌入到ViewData中?

  1. 控制器填充视图数据

    • 控制器加载模型/数据
    • Controller使用DateHelper静态方法将日期转换为友好字符串
    • 提供友好日期字符串以通过ViewData查看
  2. 控制器使用模型和视图调用填充视图数据DateHelper

    • 控制器加载模型/数据
    • Controller提供了通过ViewData查看的模型
    • 当ViewData绑定到HTML时,它调用DateHelper静态方法

我怀疑1号是正确的方法,但是看起来有点混乱,因为你可以使用模型列表并且很容易在视图中循环.如果您基于一组模型实例处理并生成一堆友好字符串,并且该模型没有可以附加到特定实例的位置,则最终会向ViewData发送两个不同的数据列表.对?

你的想法很感激.

asp.net-mvc

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

计算C++中是否会出现1/4的可能性的最佳方法是什么?

我想知道是否有一种聪明的方法可以找到答案

事情发生了1/4的可能性.

我知道我们可以用rand()%4执行此操作并检查它是否等于0,但有没有办法不使用rand()?在c ++中,谢谢.

c++ random probability

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

Django ModelForm is_valid()错误类型

我有一个EmailField(primary_key=True)。我正在使用ModelForm来向用户呈现表单,并在回发给我打电话form.is_valid()

我在此字段上看到两种类型的错误。一个是对主键的唯一值约束(此电子邮件地址已存在)。另一个是无效的电子邮件地址错误。

我想对每个错误做出不同的反应。有没有一种简单的方法可以确定验证失败是由于实际输入格式错误还是唯一约束引起的?

django django-forms

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