http://jsbin.com/idazeg/edit#javascript,html
有人能告诉我这是如何以及为什么有效?
$('#pp').click (function () {
ppp:doSomething('2'); //<=== ppp , how is JS **eating** this ?
});
Run Code Online (Sandbox Code Playgroud) 我见过这段代码:
StringBuilder Foo<T> (T arg)
{
if (arg is StringBuilder)
return (StringBuilder) arg; // Will not compile
...
}
Run Code Online (Sandbox Code Playgroud)
但是:
StringBuilder Foo<T> (T arg)
{
StringBuilder sb = arg as StringBuilder;
if (sb != null) return sb;
...
}
Run Code Online (Sandbox Code Playgroud)
将编译.
这是为什么 ?编译器害怕什么?
ps我见过另一个解决方案:
(StringBuilder) (object) arg
Run Code Online (Sandbox Code Playgroud) 正如我在阅读有关GC的3本书时,我注意到一些奇怪的事实:
C#通过CLR
CriticalFinalizerObject:CLR以非常特殊的方式处理此类和从中派生的类

什么 ???
"没有找到足够的内存来编译方法? "恕我直言 - 代码应该已经编译了......不是吗?
当我编写c#代码时 - 整个代码在运行之前被编译为IL ...不是吗?但根据文本 - 在RUNTIME - 他可能发现编译的内存不足 ......
救命 ?
简单查询:
UPDATE [WebERP].[dbo].[Users]
SET
[ActiveDirectoryUser] = null
WHERE ActiveDirectoryUser='xxx\royin'
Run Code Online (Sandbox Code Playgroud)
错误:
消息512,级别16,状态1,过程Users_Update,行17
子查询返回多个值.当子查询跟随=,!=,<,<=,>,> =或子查询用作表达式时,不允许这样做.该语句已终止.
我想问题出在这里:

它把它当作回车.
(如果我改变\r到\b它的确定.)
我该如何解决?
恕我直言SQL Server可以选择自己(除非被告知)什么是用于查询的最佳索引.
好
这样的事情(伪代码):
select __a from tbl where __a not in
(
select __b from tbl
)
Run Code Online (Sandbox Code Playgroud)
(假设我们拥有的index_1是哪个(__a),index_2哪个是(__b)
SQL Server是否仍会在执行时使用一个索引或多个索引一起使用......?
我有这个简单的代码:(更新值)
我正在尝试更新列"c"
using (MaxEntities ctx = new MaxEntities())
{
aa orders = (from order in ctx.aa
select order).First();
orders.c = 22;
ctx.SaveChanges();
}
Run Code Online (Sandbox Code Playgroud)
这是表:
CREATE TABLE [dbo].[aa](
[a] [int] NULL,
[b] [int] NOT NULL,
[c] [int] NOT NULL
) ON [PRIMARY]
Run Code Online (Sandbox Code Playgroud)
和里面的价值观:

但我得到一个例外:
属性"c"是对象的关键信息的一部分,无法修改.

我是EF的新手.
任何帮助都感激不尽.
我已经构建了一个函数来检查日期部分值是否有效:
坏值示例:
new Date(2012,3,44) =
Mon May 14 2012 00:00:00 GMT+0300 (Jerusalem Daylight Time)
Run Code Online (Sandbox Code Playgroud)
这是函数(它的参数是由我发送的separately!)
function isDate(year, month, day)
{
...
}
alert(isDate( 2001,2,29));
Run Code Online (Sandbox Code Playgroud)
但是,我有一个问题.
如果我有一个无效的日期对象,如:: var t= new Date(2001,2,44) 我想将它发送到我的函数,我需要提取它的值.
如何提取44值+ 2值?
t.getDate() //13
t.getMonth() //3 (days went from march to april)
Run Code Online (Sandbox Code Playgroud)
任何帮助?
我问这个问题是为了 100% 确定。
为了验证证书以确保它包含由证书颁发机构数字签名的信息,Web 浏览器会验证数字签名。由于数字签名是根据证书内容计算的加密哈希值,因此 Web 浏览器需要比较哈希值。Web 浏览器根据它收到的证书的内容计算哈希值。然后解密数字签名以确定证书颁发机构计算的哈希值。如果两个哈希值匹配,则 Web 浏览器确信该证书包含证书颁发机构验证和数字签名的信息。
问题 :
Web 浏览器根据收到的证书内容计算哈希值
浏览器知道证书在哪个摘要算法中使用,因此他也使用它来计算哈希 - 基于证书内容。
然后解密数字签名以确定证书颁发机构计算的哈希值
浏览器知道哪个 CA 创建了证书,因此他从适当的计算机存储位置获取公钥并将其应用于加密的哈希值。结果是解密的哈希值。
然后看看两者是否相同。
我对吗 ?
我有这个简单的事件:
public class ClassA
{
public event Func<string, int> Ev;
public int Do(string l)
{
return Ev(l);
}
}
Run Code Online (Sandbox Code Playgroud)
和2方法:
static int Display(string k)
{
return k.Length;
}
static int Display_2(string k)
{
return k.Length*10;
}
Run Code Online (Sandbox Code Playgroud)
我正在注册这个活动:
ClassA a = new ClassA();
a.Ev += Display;
a.Ev += Display_2;
Run Code Online (Sandbox Code Playgroud)
现在,我正在执行:
Console.WriteLine(a.Do("aaa"));
Run Code Online (Sandbox Code Playgroud)
输出 :

什么 ???
他在调用列表中有2种方法!它确实运行了它们,但为什么它只显示上次注册的结果?
结果在哪里"3"消失了?(第一次调用)?(虽然两个display+都display_2被执行了......我没想到console.write会迭代结果.但也没想到他决定要显示哪个.)

在解决了这个问题之后,我仍然有一个问题.
我有两个优秀的答案,但我仍然有找到一个麻烦怎么会这样实际上是发生:(怎么可能有故障的情况可能会发生):
我将从一个例子开始:
public void Do(string [] g)
{
g=null; //<========
}
void Main()
{
var t=new string[3];
t[0]="1"; t[1]="1"; t[2]="1";
Do( t);
Console.WriteLine ( t.Length);
}
Run Code Online (Sandbox Code Playgroud)
标记行可以在不同的线程中执行,但每个线程都有自己的 g变量!
(请记住,我无法在arrray中添加项目.因为创建时会创建数组长度)
无论我对该函数 做什么Do- (无论在什么线程中),Console.Writeline结果将始终是3(除非使用ref).
所以让我们看看真正的代码:
public static string Concat(params string[] values)
#1 {
#2 if (values == null)
#3 {
#4 throw new ArgumentNullException("values");
#5 }
#6 int totalLength = 0;
#7 string[] strArray = new …Run Code Online (Sandbox Code Playgroud) c# ×5
.net ×3
sql-server ×3
.net-4.0 ×2
javascript ×2
certificate ×1
clr ×1
delegates ×1
generics ×1
indexing ×1
jquery ×1
security ×1
ssl ×1
string ×1