小编Ome*_*ten的帖子

为什么C#无法将两种对象类型相互比较,但VB却没有?

我在C#中有两个对象,不知道它是布尔值还是其他任何类型.但是,当我尝试比较那些C#未能给出正确答案时.我用VB.NET尝试了相同的代码并且做到了!

如果有解决方案,谁能告诉我如何解决这个问题?

C#:

object a = true;
object b = true;
object c = false;
if (a == b) c = true;
MessageBox.Show(c.ToString()); //Outputs False !!
Run Code Online (Sandbox Code Playgroud)

VB.NET:

Dim a As Object = True
Dim b As Object = True
Dim c As Object = False
If (a = b) Then c = True
MessageBox.Show(c.ToString()) '// Outputs True
Run Code Online (Sandbox Code Playgroud)

.net c# vb.net comparison

152
推荐指数
2
解决办法
5751
查看次数

什么时候你会喜欢DateTime Over DateTimeOffset

几个月前,我被介绍到新型DateTimeOffset,很高兴DateTime关于时区的缺陷终于得到了解决.

但是,我想知道使用这种新类型是否有任何开销或问题.

我在一个多语言环境的Web应用程序上工作.有没有人知道任何可以影响我的东西,只是在我的所有日​​期/时间工作中使用它?这里有滥用的窗口吗?

参考:DateTimeOffset:Justin Van Patten在.NET 3.5中的一个新的DateTime结构

.net datetime datetimeoffset

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

JavaScript的document.write内联脚本执行顺序

我有以下脚本,其中第一个和第三个document.writeline是静态的,第二个是生成的:

<script language="javascript" type="text/javascript">
document.write("<script language='javascript' type='text/javascript' src='before.js'><\/sc" + "ript>");
document.write("<script language='javascript' type='text/javascript'>alert('during');<\/sc" + "ript>");
document.write("<script language='javascript' type='text/javascript' src='after.js'><\/sc" + "ript>");
</script>
Run Code Online (Sandbox Code Playgroud)

Firefox和Chrome将显示之前,期间之后,在Internet Explorer的第一个节目期间才把它显示之前之后.

我遇到过一篇文章,说我不是第一个遇到这个问题的文章,但这并不能让我感觉更好.

有没有人知道如何在所有浏览器中将命令设置为确定性,或者黑客IE浏览器像所有其他浏览器一样工作?

警告:代码片段是一个非常简单的repro.它是在服务器上生成的,第二个脚本是唯一发生变化的脚本.这是一个很长的脚本,并且之前和之后有两个脚本的原因是浏览器将缓存它们,并且代码的动态部分将尽可能小.它也可能在具有不同生成代码的同一页面中多次出现.

javascript browser cross-browser

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

System.Net.Mail和=?utf-8?B?XXXXX ....标题

我正在尝试使用下面的代码来发送消息System.Net.Mail,有时会得到像'=?utf-8?B?W3AxM25dIEZpbGV...'(修剪过)这样的主题.这是被称为的代码:

MailMessage message = new MailMessage()
{
    From = new MailAddress("someone@somewhere.com", "Service"),
    BodyEncoding = Encoding.UTF8,
    Body = body,
    IsBodyHtml = true,
    ReplyTo = new MailAddress("do.not.reply@somewhere.com"),
    SubjectEncoding = Encoding.UTF8
};

foreach (string emailAddress in addresses)
{
    message.To.Add(new MailAddress(emailAddress.Trim(), "Person"));
}

message.Subject = subject;
Run Code Online (Sandbox Code Playgroud)

我想强调,这不会一直发生.

我究竟做错了什么?

.net c# encoding utf-8 system.net.mail

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

如何为SBT设置默认项目

假设我有一个包含三个项目的构建:A,B和C.如果我当前处于A的上下文并重新加载构建,则可能在重新加载后将上下文更改为C. 因此,我必须在每次重新加载后更改我的项目上下文.

有没有办法将特定项目设置为默认上下文?

scala build sbt

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

ASP.NET UserControl不初始化子控件

在我的页面内,我有以下内容:

<aspe:UpdatePanel runat="server" ID="updatePanel">
    <ContentTemplate>
        <local:KeywordSelector runat="server" ID="ksKeywords" />
    </ContentTemplate>
</aspe:UpdatePanel>
Run Code Online (Sandbox Code Playgroud)

KeywordSelector控制是我在相同组件限定和控制local被映射到它的命名空间.

控件由其他几个控件组成,定义如下:

<%@ Control Language="C#" AutoEventWireup="true"
            CodeBehind="KeywordSelector.ascx.cs"
            Inherits="Keywords.KeywordSelector" %>
Run Code Online (Sandbox Code Playgroud)

并且有很多自己的服务器控件,都被定义为.designer.cs文件中的成员.

但是,在控件生命周期的任何部分都没有任何子控件对象,也不会生成HTML:

  1. .designer.cs文件中定义的所有成员都是null.
  2. 要求HasControls退货false.
  3. 呼吁EnsureChildControls什么都不做.
  4. Controls集合是空的.

删除UpdatePanel没有好处.我尝试在一个干净的页面中重现它与新UserControl的相同的事情发生.

我在.NET Framework 3.5 SP1上使用ASP.NET和集成的Web服务器.

我在这里错过了什么?

更新#1:在Rob的评论之后,我调查OnInit并发现UserControl它没有检测到它有任何子控件.而且,CreateControlCollection从来没有被称为!

.net asp.net

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

如何将IntelliJ IDEA 9作为64位进程运行?

我注意到IntelliJ IDEA 9在Windows 2003 x64中作为32位进程运行,并希望将其配置为以64位进程运行.我确实找到了一篇关于如何在Mac OSX中执行此操作的文章,但在Windows中没有.

更新#1:我安装了64位版本的JDK 1.6.18.

java 64-bit intellij-idea

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

为什么甚至回收应用程序池?

也许有人可以对这个简单的问题有所了解:

我有一个经过彻底审查的.NET Web应用程序.它会在每个appdomain(进程)启动时加载一个缓存,并且在完成此缓存加载之前无法完全回复请求.

我一直在检查我的应用程序池上的设置,并开始想知道为什么我甚至经常回收(每1,000,000个电话一次或2个小时).

是什么阻止我将自动回收设置为每24小时甚至更长时间?为什么不完全删除该选项,只是如果内存旋转失控的appdomain只是回收?

iis webserver web-applications application-pool recycle

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

在IntelliJ IDEA中并行运行JUnit测试

我有一个大套房的测试,大约需要一个半小时运行,并会喜欢能够并行测试类.

有没有办法用IntelliJ IDEA 9做到这一点?

java junit unit-testing intellij-idea

10
推荐指数
3
解决办法
5575
查看次数

为什么Scala不能从隐式证据中推断出类型

我试过这个并且它失败并出现错误:扩展函数缺少参数类型((x $ 29)=> x $ 29.sum).

有人可以解释为什么会这样吗?这只是Scala的类型推断不够强大吗?

object HelloStackOverflow {
    implicit class Repro[T](val iterable: Iterable[T]) extends AnyVal {
        def foo[A, B, Z](bar: Iterable[B] => Z)(implicit evidence: T <:< (A, B)) =
            bar(iterable.map(_._2))
    }

    List(("a", 1), ("b", 2)).foo(_.sum)
}
Run Code Online (Sandbox Code Playgroud)

(使用Scala 2.10)

scala type-inference

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

StackOverflowError在SBT的编译中

在构建时(使用compile或test:compile),我收到此错误:

[info] [specializing CorrelationDal.scala]
[error] {file:/home/bamboo/.../}batch/compile:compile: java.lang.StackOverflowError
[error] Total time: 20 s, completed Feb 28, 2012 7:32:08 AM
Run Code Online (Sandbox Code Playgroud)

如您所知,我在scalacOption键中设置了'-verbose'选项.

我决定尝试使用以下方法为编译过程提供更大的堆栈大小:

(fork := true) ++ (javaOptions += "-Xss4G")
Run Code Online (Sandbox Code Playgroud)

但这没有改变.

我试图检查我对CorrelationDal.scala所做的更改,并尝试放松它需要做的推理量(明确注意类型,删除可迭代的链式创建等),但我无法分辨哪些是没有内部理解Scala编译器的罪魁祸首.

有没有人知道如何解决问题的核心?

scala build sbt

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