问题列表 - 第5582页

Indexers有什么用?

C#中索引器的真正用途是什么?

它看起来很混乱,因为我是一名新的c#程序员.它看起来像一个对象数组,但事实并非如此.

c#

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

为什么LINQ to SQL被扩展方法欺骗了?现在怎么办?

考虑我的Event班级,并将我DateTime作为UTC日期存储在数据库中.我只想根据特定时区的当前日期返回过滤范围 - 这很简单吗?

这很好用:

IQueryable<Event> test1 = this.GetSortedEvents().Where(e => e.FinishDateTime.Date >= DateTime.UtcNow.Date);
Run Code Online (Sandbox Code Playgroud)

这也很好:

IQueryable<Event> test2 = this.GetSortedEvents().Where(e => e.FinishDateTime.AddHours(3).Date >= DateTime.UtcNow.AddHours(3).Date);
Run Code Online (Sandbox Code Playgroud)

..并且还符合我的时区要求.

所以在这里我想我可以将这个特定的转换移到这个扩展方法:

    public static DateTime RiyadhTimeFromUtc(this DateTime utcTime)
    {
        return utcTime.AddHours(3);
    }
Run Code Online (Sandbox Code Playgroud)

这不起作用:

IQueryable<Event> test3 = this.GetSortedEvents().Where(e => e.FinishDateTime.RiyadhTimeFromUtc().Date >= DateTime.UtcNow.RiyadhTimeFromUtc().Date);
Run Code Online (Sandbox Code Playgroud)

..我得到这个NotSupportedException:方法'System.DateTime RiyadhTimeFromUtc(System.DateTime)'没有支持的SQL转换.

这显然是垃圾,因为当相同的代码不在扩展方法中时,编译器很乐意将其转换为SQL.

在使用某些类型和最近的DateTime之前,我遇到了"没有支持的SQL转换"问题.但我上面的测试和此链接证明了SQL转换中应该支持AddHours方法.

如果有人能告诉我这里我做错了什么(或者解决这个问题的方法不同),我真的很感激.

sql extension-methods datetime utc linq-to-sql

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

从IEnumerable <Object>转换为IEnumerable <string>

最近我在c#中发现了一个非常令人惊讶的行为.我有一个方法,它IEnumerable<Object>作为参数,我正在通过, IEnumerable<string>但它是不可能的.虽然在c#中,所有内容都可以向上转换为对象而不是为什么这是不可能的?这让我很困惑.请有人在这个问题上告诉我.

c# covariance contravariance

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

在循环内创建最终变量

这是允许在java中:

for(int i=0;i<5;i++){
  final int myFinalVariable = i;
}
Run Code Online (Sandbox Code Playgroud)

我的问题的关键字是final.是否允许执行随循环的每次运行而变化的最终变量?我想知道这是因为最后说你不能改变变量的值(仅调用myFinalVariable = i),但我正在重新定义整个变量final int.

它们是两个完全不同的变量,只是具有相同的名称 - 从上一次循环运行的变量已经走向垃圾收集器的道路?

java final

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

Ruby Code解释道

有人可以解释这段Ruby代码:

def add_spec_path_to(args) # :nodoc:
  args << {} unless Hash === args.last
  args.last[:spec_path] ||= caller(0)[2]
end
Run Code Online (Sandbox Code Playgroud)

我已经看到<<运算符用于连接字符串或用作其他语言的按位运算符,但有人可以在此上下文中解释它.它是以某种方式将空白的lamda附加到args上还是我完全错了?

我也可以看到它像这样使用:

before_parts(*args) << block
Run Code Online (Sandbox Code Playgroud)

Hash关键字吗?

我也不确定||=操作员在说什么.

我在黑暗中同样如此caller(0)[2].

ruby

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

即使行被删除,mysql中的id是否保证不重复?

当然,如果我最终放置了足够的行,就会重复。但假设我选择了一个足够大的 id 字段。

我想知道我是否可以假设 id 随着时间的推移唯一标识该行。如果客户端向我发送一个 id,我希望能够确定它引用的是哪一行,或者该行是否被删除(或者如果它是一个假 id,但在这种情况下,我不会关心错误地告诉我该行是已删除)。

另请参阅以下内容:如果我重新启动数据库,或备份和恢复 - 它将继续在其留下的位置创建 id - 或者可能会决定“填补漏洞”

mysql

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

PHP中的文本显示

如果我将数据存储在包含网址的数据库中(例如:转到此链接http://www.google.com).

当我在浏览器中显示该数据时,我想显示"通过此链接http://www.google.com " 这样的数据.但那个看起来像锚链接的网址......

如果你没有得到这个...打开谷歌聊天...发送一些消息,如http://google.com ..如果您发送纯文本,如http://google.com,但它显示与超链接..到那个网址..

我想在PHP技术中使用这个功能......我们如何实现这一点

提前致谢...

php

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

表列的唯一约束

我有一个表(一个包含数据的现有表),该表有一个UserName列.我希望这个UserName是唯一的.所以我添加这样的约束:

ALTER TABLE Users 
ADD CONSTRAINT [IX_UniqueUserUserName] UNIQUE NONCLUSTERED ([UserName])
Run Code Online (Sandbox Code Playgroud)

现在我不断收到此表中存在重复用户的错误.但是我使用以下查询检查了数据库:

SELECT COUNT(UserId) as NumberOfUsers, UserName 
FROM Users 
GROUP BY UserName, UserId 
ORDER BY UserName
Run Code Online (Sandbox Code Playgroud)

这导致一个用户列表都具有1作为NumberOfUsers.所以没有重复.但是当我检查用户名失败时,我看到以下结果:

beluga
béluga
Run Code Online (Sandbox Code Playgroud)

所以他显然没有比较"e"和"é"或"è"......这就像他忽略了这些,在添加唯一键约束时,sql是否有任何方法不会忽略这些重音.

解:

THX对你们我找到了解决方案.这解决了这个问题:

ALTER TABLE Users 
ALTER COLUMN UserName nvarchar(250) COLLATE SQL_Latin1_General_CP1_CI_AS
Run Code Online (Sandbox Code Playgroud)

sql sql-server constraints diacritics unique-key

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

Microsoft AJAX客户端库与jQuery

在jquery集成新闻之后,jQuery和MS Ajax正在进行大量讨论.

我目前正在说服我的团队考虑jQuery,但我不是他们中的任何一个.

我真的想要在jQuery和MS Ajax"Client"库之间进行一些很好的比较,因为我的团队认为如果我们只使用原始的ms ajax客户端库,我们可以使用jQuery,而jQuery似乎只有更好的选择器.

在某些情况下,有人可以为使用jQuery而不是MS Ajax提供一些很好的见解吗?如果更好的性能问题?

谢谢!

ajax jquery client

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

C#:是否可以取消linq2sql查询?

是否可以取消linq2sql查询?就像我建立了需要一段时间才能运行的查询一样,我希望用户可以取消它。有人对此有什么好主意吗?

c# linq-to-sql

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