小编Ste*_*son的帖子

是否可以在C#中实现mixins?

我听说有可能使用扩展方法,但我自己也无法弄明白.如果可能的话,我想看一个具体的例子.

谢谢!

c# extension-methods mixins

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

如何返回按NULL和NOT NULL分组的记录?

我有一个有processed_timestamp列的表- 如果已经处理了一个记录,那么该字段包含它被处理的日期时间,否则它是null.

我想写一个返回两行的查询:

NULL        xx -- count of records with null timestamps
NOT NULL    yy -- count of records with non-null timestamps
Run Code Online (Sandbox Code Playgroud)

那可能吗?

更新:表格非常大,因此效率非常重要.我可以运行两个查询来分别计算每个总数,但是如果我可以避免它,我想避免两次击中表.

sql null group-by

52
推荐指数
6
解决办法
4万
查看次数

C#ADO.NET:nulls和DbNull - 是否有更高效的语法?

我有一个DateTime?我正在尝试使用a插入字段DbParameter.我正在创建这样的参数:

DbParameter datePrm = updateStmt.CreateParameter();
datePrm.ParameterName = "@change_date";
Run Code Online (Sandbox Code Playgroud)

然后我想把s 的值DateTime?放到dataPrm.Valuewhile中null.

我以为我最初很聪明:

datePrm.Value = nullableDate ?? DBNull.Value;
Run Code Online (Sandbox Code Playgroud)

但是因错误而失败

接线员'??' 不能应用于'System.DateTime?'类型的操作数 和'System.DBNull'

所以我想这只有在第二个参数是第一个参数的非可空版本时才有效.那么我去了:

datePrm.Value = nullableDate.HasValue ? nullableDate.Value : DBNull.Value;
Run Code Online (Sandbox Code Playgroud)

但这也不起作用:

无法确定条件表达式的类型,因为'System.DateTime'和'System.DBNull'之间没有隐式转换

但我不想在这些类型之间进行转换!

到目前为止,我唯一可以上班的是:

if (nullableDate.HasValue)
  datePrm.Value = nullableDate.Value;
else
  datePrm.Value = DBNull.Value;
Run Code Online (Sandbox Code Playgroud)

这真的是我写这个的唯一方法吗?有没有办法使用三元运算符来实现单线程?

更新:我真的不明白为什么?? 版本不起作用.MSDN说:

?? ?? 如果左侧操作数不为null,则运算符返回左侧操作数,否则返回右侧操作数.

这正是我想要的!

Update2:最后有点明显:

datePrm.Value = nullableDate ?? (object)DBNull.Value;
Run Code Online (Sandbox Code Playgroud)

c# null ado.net dbnull nullable

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

如何序列化和反序列化Javascript对象?

我需要序列化和反序列化Javascript对象以将它们存储在DB中.

请注意,这些对象包含函数,因此我无法将它们存储为JSON,因此我无法使用json2.js.

什么是[de]序列化javascript对象的最新技术(当然是在javascript中).

谢谢,斯图尔特

javascript serialization

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

集中式日志记录的最佳实践是什么?

我的团队继承了对100多个应用程序的支持.应用程序没有任何类型的通用体系结构,因此进行日志记录的应用程序通常使用自定义代码来执行本地文件或本地数据库,并且它们都是非托管的.我们想改变这一点.

我们正在慢慢地将应用程序迁移到使用log4net并标准化记录的事物类型.接下来的问题是:我们应该在哪里发送日志?

我认为使用专用于接收所有日志的中央SQL Server会很好,这将提供简单的维护(备份/归档的一个位置),并提供一些数据挖掘和趋势分析的未来可能性.

这是这种事情的最佳实践,还是有一些我们应该关注的专用应用程序日志记录服务器?

更新:我应该更清楚,而不仅仅是随便提一下log4net和SQL Server:我们是微软的家,大多数东西用.NET编写.UNIX解决方案对我们没有好处.

logging centralized

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

NUnit [TearDown]失败 - 访问我的文件的进程是什么?

最终编辑:我找到了问题的解决方案(在问题的底部).

我有一个让你感到悲伤的Nunit问题.编辑:实际上它看起来更像是一个SQLite问题,但我还不是100%肯定.

我的TestFixture有一个设置,可以生成一个随机文件名,在我的每个测试中都用作SQLite数据库.

[Setup]
public void Setup()
{
    // "filename" is a private field in my TestFixture class
    filename = ...; // generate random filename
}
Run Code Online (Sandbox Code Playgroud)

我的每个测试都在访问数据库的每个方法中使用此构造:

[Test]
public void TestMethod()
{
    using (var connection = Connect())
    {
        // do database activity using connection

        // I've tried including this line but it doesn't help
        // and is strictly unnecessary:
        connection.Close();
    }
}

private DbConnection Connect()
{
    var connection = DbProviderFactories.GetFactory("System.Data.SQLite").CreateConnection();
    connection.ConnectionString = "Data Source=" + filename;
    connection.Open(); …
Run Code Online (Sandbox Code Playgroud)

sqlite nunit unit-testing ioexception

18
推荐指数
2
解决办法
3780
查看次数

Marshal ruby​​ hash with default proc - 删除默认的proc?

我有一个带有默认proc的哈希,我想将Marshal设置为一个文件,但默认的proc会阻止我这样做.

而不是写我自己_dump_load方法,是有可能,而不是删除默认PROC呢?在我编组时,我永远不会再需要默认的proc.

ruby hash marshalling

11
推荐指数
2
解决办法
2007
查看次数

如何确保我的git repo代码安全?

如果我们的组织要从像subversion这样的中央服务器VCS切换到像git这样的分布式VCS,我该如何确保我的所有代码都免受硬件故障的影响?

使用中央服务器VCS,我只需要每天备份存储库.如果我们使用的是DVCS,那么所有开发者机器上都会有大量的代码分支,如果硬件失败(或者开发人员丢失了他的笔记本电脑或者它被盗),那么我们就没有任何备份.

请注意,我不认为这是"让开发人员将分支机构推送到服务器"的一个好选择 - 这很乏味,开发人员最终也不会这样做.

这个问题有一个共同的方法吗?

一些澄清:

使用本机中央服务器VCS,除了开发人员的最新更改之外,所有内容都必须位于中央服务器上.因此,例如,如果开发人员决定进行分支以执行错误修正,则该分支位于中央服务器上并立即可用于备份.

如果我们使用DVCS,那么开发人员可以进行本地分支(实际上是许多本地分支).在开发人员认为"哦,是的,我应该将其推送到中央服务器"之前,这些分支都不在中央服务器上并且可用于备份.

所以我看到的差异(如果我错了,请纠正我!):如果我们使用的是DVCS,但是使用正常的VCS,半实现的功能和错误修正可能无法用于中央服务器上的备份.如何保证代码安全?

git backup dvcs

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

Rails:如何通过关联RESTful查询模型?

我没有使用Ruby on Rails获得REST,我希望有人可以帮助我.

想象一下,我正在构建一个跟踪窗口小部件和拥有这些窗口小部件的用户的网站.所以我有一个UsersController和一个WidgetsController,我可以获得一个包含索引操作的Widgets或Users列表:

GET /users
GET /widgets
Run Code Online (Sandbox Code Playgroud)

我可以通过show动作获得特定的用户或小部件:

GET /users/id
GET /widgets/id
Run Code Online (Sandbox Code Playgroud)

我明白了.

我感到困惑的是,我将使用RESTful请求来检索属于特定用户的小部件列表?这是一个发送到UsersController或WidgetsController的请求吗?它使用了7种RESTful操作中的哪一种?

是我创建自定义操作的情况之一吗?我的印象是自定义操作应该很少见,但这似乎是一个非常常见的用例.

谢谢!

rest ruby-on-rails

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

Rails按关联模型的属性收集订单?

我正在试图找出一种基于所收集模型的关联属性来订购模型集合的方法(我想......真是满口).这是我正在做的事情:

class Item < ActiveRecord::Base
  belongs_to :category
end

class Order < ActiveRecord::Base
  has_many :items, :order => :category_id
end
Run Code Online (Sandbox Code Playgroud)

此时order.items返回category_id排序的Items.但我真正想要的是按字母顺序列出它们category.name.那可能吗?

谢谢,斯图尔特

collections ruby-on-rails associations ruby-on-rails-3.1

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