小编Ric*_*ett的帖子

将UTC/GMT时间转换为当地时间

我们正在为Web服务客户端开发一个C#应用程序.这将在Windows XP PC上运行.

Web服务返回的字段之一是DateTime字段.服务器返回GMT格式的字段,即最后带有"Z".

但是,我们发现.NET似乎做了某种隐式转换,时间总是12小时.

以下代码示例在一定程度上解决了这个问题,因为12小时的差异已经消失,但它不允许新西兰夏令时.

CultureInfo ci = new CultureInfo("en-NZ");
string date = "Web service date".ToString("R", ci);
DateTime convertedDate = DateTime.Parse(date);            
Run Code Online (Sandbox Code Playgroud)

根据这个日期网站:

UTC/GMT抵消

标准时区:UTC/GMT +12小时
夏令时:+ 1小时
当前时区偏移:UTC/GMT +13小时

我们如何调整额外的小时?这可以通过编程方式完成,还是PC上的某种设置?

.net c# datetime utc

291
推荐指数
8
解决办法
39万
查看次数

customErrors和httpErrors有什么区别?

是什么之间的区别customErrors,并httpErrors在ASP.NET MVC应用程序的web.config文件的部分?

使用每个部分的准则是什么?

web-config iis-7.5

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

CryptographicException'Keyset不存在',但仅限于WCF

我有一些代码调用使用X.509认证保护的第三方Web服务.

如果我直接调用代码(使用单元测试),它可以正常工作.

部署后,将通过WCF服务调用此代码.我添加了第二个调用WCF服务的单元测试,但是当我在第三方Web服务上调用方法时,这个CryptographicException消息失败了"Keyset does not exist".

我认为这是因为我的WCF服务将尝试使用不同的用户自己调用第三方Web服务.

任何人都可以解决这个问题吗?

.net wcf x509

152
推荐指数
7
解决办法
18万
查看次数

通用列表 - 移动列表中的项目

所以我有一个通用列表,一个oldIndex和一个newIndex值.

我想尽可能简单地将项目移动oldIndexnewIndex......

有什么建议?

注意

该项目应该在删除之前(newIndex - 1)newIndex 之前的项目之间结束.

.net c# generics list

139
推荐指数
6
解决办法
17万
查看次数

是什么导致我的java.net.SocketException:连接重置?

我们java.net.SocketException: Connection reset在日志中看到频繁但间歇性的 错误.我们不确定Connection reset错误实际来自何处,以及如何进行调试.

该问题似乎与我们尝试发送的邮件无关.请注意,消息不是 connection reset by peer.

有关此异常的典型原因可能是什么的建议,以及我们如何进行?

这是一个代表性的堆栈跟踪(com.companyname.mtix.sms是我们的组件):


    java.net.SocketException: Connection reset
        at java.net.SocketInputStream.read(SocketInputStream.java:168)
        at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
        at java.io.BufferedInputStream.read(BufferedInputStream.java:235)
        at org.apache.commons.httpclient.HttpParser.readRawLine(HttpParser.java:77)
        at org.apache.commons.httpclient.HttpParser.readLine(HttpParser.java:105)
        at org.apache.commons.httpclient.HttpConnection.readLine(HttpConnection.java:1115)
        at org.apache.commons.httpclient.HttpMethodBase.readStatusLine(HttpMethodBase.java:1832)
        at org.apache.commons.httpclient.HttpMethodBase.readResponse(HttpMethodBase.java:1590)
        at org.apache.commons.httpclient.HttpMethodBase.execute(HttpMethodBase.java:995)
        at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:397)
        at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:170)
        at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:396)
        at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:324)
        at com.companyname.mtix.sms.services.impl.message.SendTextMessage.sendTextMessage(SendTextMessage.java:127)
        at com.companyname.mtix.sms.services.MessageServiceImpl.sendTextMessage(MessageServiceImpl.java:125)
        at com.companyname.mtix.sms.services.remote.MessageServiceRemoteImpl.sendTextMessage(MessageServiceRemoteImpl.java:43)
        at sun.reflect.GeneratedMethodAccessor203.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at org.apache.axis.providers.java.RPCProvider.invokeMethod(RPCProvider.java:397)
        at org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:186)
        at org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:323)
        at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
        at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
        at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
        at org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:453)
        at org.apache.axis.server.AxisServer.invoke(AxisServer.java:281)
        at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:699) …

java sockets socketexception connection-reset

136
推荐指数
7
解决办法
81万
查看次数

用于放置using指令的Visual Studio或Resharper功能

我喜欢将我的using指令放在当前命名空间内,而不是在外面,因为VS和Resharper默认放置它们.

有没有人知道一个宏/标准功能,它排除/删除未使用的using指令并将它们放在当前的命名空间中?

resharper using-directives visual-studio

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

间歇性log4net RollingFileAppender锁定文件问题

我们在开发和生产机器上看到一个间歇性问题,我们的日志文件没有被记录.

使用Visual Studio在开发和调试中运行时,我们在VS输出窗口中收到以下log4net错误消息:

log4net:ERROR [RollingFileAppender] Unable to acquire lock on file C:\folder\file.log.
Run Code Online (Sandbox Code Playgroud)

该进程无法访问文件"C:\ folder\file.log",因为它正由另一个进程使用.

log4net:ERROR XmlConfigurator: Failed to find configuration section 'log4net' in the application's .config file.
Check your .config file for the <log4net> and <configSections> elements.
Run Code Online (Sandbox Code Playgroud)

配置部分应如下所示:

<section
  name="log4net"
  type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
Run Code Online (Sandbox Code Playgroud)

我们当前解决此问题的方法是重命名最后一个日志文件.我们当然希望这会失败(由于前面提到的文件锁定),但通常不会.由于aspnet_wp.exe进程的锁定,重命名一次或两次失败.

我们的log4net配置部分如下所示:

<log4net>
  <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
    <file value="C:\folder\file.log"/>
    <appendToFile value="true" />
    <datePattern value="yyyyMMdd" />
    <rollingStyle value="Date" />
    <maximumFileSize value="10MB" />
    <maxSizeRollBackups value="100" />
    <layout type="log4net.Layout.PatternLayout">
      <header value="[Header]&#xA;"/>
      <footer value="[Footer]&#xA;"/>
      <conversionPattern value="%date %-5level %logger ${COMPUTERNAME} %property{UserHostAddress} [%property{SessionID}] …
Run Code Online (Sandbox Code Playgroud)

log4net locking rollingfileappender

110
推荐指数
3
解决办法
5万
查看次数

HtmlString与MvcHtmlString

HtmlStringMvcHtmlString

两者之间有什么区别,或者何时优先选择另一个?

编辑:

有一点喜欢MvcHtmlStringHtmlString的是扩展方法IsNullOrEmptyMvcHtmlString.

.net-4.0 asp.net-mvc-3

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

哈希码和校验和 - 有什么区别?

我的理解是哈希码和校验和是类似的东西 - 为数据块计算的数值,它是相对独特的.

即,产生相同数字散列/校验和值的两个数据块的概率足够低,以至于出于应用目的可以忽略它.

那么我们是否有两个单词用于相同的事情,或者哈希码和校验和之间是否存在重要差异?

language-agnostic hash computer-science checksum

107
推荐指数
8
解决办法
4万
查看次数

编译器模糊调用错误 - 具有Func <>或Action的匿名方法和方法组

我有一个场景,我想使用方法组语法而不是匿名方法(或lambda语法)来调用函数.

该函数有两个重载,一个需要一个Action,另一个需要一个Func<string>.

我可以愉快地使用匿名方法(或lambda语法)调用两个重载,但如果我使用方法组语法,则会获得Ambiguous调用的编译器错误.我可以明确的解决方法铸造到ActionFunc<string>,但不认为这应该是必要的.

任何人都可以解释为什么应该要求显式演员表.

代码示例如下.

class Program
{
    static void Main(string[] args)
    {
        ClassWithSimpleMethods classWithSimpleMethods = new ClassWithSimpleMethods();
        ClassWithDelegateMethods classWithDelegateMethods = new ClassWithDelegateMethods();

        // These both compile (lambda syntax)
        classWithDelegateMethods.Method(() => classWithSimpleMethods.GetString());
        classWithDelegateMethods.Method(() => classWithSimpleMethods.DoNothing());

        // These also compile (method group with explicit cast)
        classWithDelegateMethods.Method((Func<string>)classWithSimpleMethods.GetString);
        classWithDelegateMethods.Method((Action)classWithSimpleMethods.DoNothing);

        // These both error with "Ambiguous invocation" (method group)
        classWithDelegateMethods.Method(classWithSimpleMethods.GetString);
        classWithDelegateMethods.Method(classWithSimpleMethods.DoNothing);
    }
}

class ClassWithDelegateMethods
{
    public void Method(Func<string> func) { /* do something …
Run Code Online (Sandbox Code Playgroud)

c# delegates

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