小编skb*_*skb的帖子

半棘手的SQL查询

我正在尝试编写SQL Server 2005的查询,但我无法弄清楚如何做到这一点.我有一个包含以下字段的表:

MessageID int
CategoryID int
Priority tinyint
MessageText NVARCHAR(MAX)

我需要一个查询,它将为类别中具有最高优先级的每一行返回*.例如,如果我有以下数据:

MessageID,CategoryID,优先级,MessageText 1,100,1
,错误#1234发生2,100,2
,错误#243发生
3,100,3,错误#976发生4,200,4
,错误#194发生
5,200 ,1,错误#736发生6,300,3
,错误#54发生
7,300,2,发生错误#888

那么结果将是:

MessageID,CategoryID,优先级,MessageText 3,100,3
,错误#976发生4,200,4
,错误#194发生6,300,3,发生
错误#54

请注意,它为每个类别返回一行,并且它是该类别具有最高优先级的行.

任何人都可以告诉我如何编写此查询?

sql sql-server

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

是否有一个干净的T-SQL查询,我可以用来验证索引是否有正确的列?

我正在编写一个数据库升级脚本,它将检查索引是否定义了正确的两列.如果它没有,或者它只有其中一个,那么我将DROP它(有没有办法改变索引?)然后用两者重新创建它.

t-sql sql-server indexing

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

NServiceBus:使用NServiceBus分销商的优点和缺点

我正在考虑使用网络负载均衡器在我的用户实例之间加载平衡消息,而不是使用NServiceBus分发服务器(这基本上只是我能说的软件负载均衡器).每个订户实例将具有要传递到的消息的相同名称的队列,并且将存在在订户之间循环的虚拟IP.发布者只会知道虚拟IP和队列名称.

以下是我理解为这样做的利弊:

  1. PROS
    • 无需安装NServiceBus分销商
    • 当我们进行横向扩展时,需要管理/更新的东西少一些(我们已经使用F5对这些机器进行负载平衡,而我们的数据中心购买时就知道它就像他们的手背一样)
    • 少一点失败(是的,NLB可能会失败,但让我们面对它,F5将比在Windows上运行的NServiceBus分销商稳定得多)
    • 无需拥有群集服务器即可拥有我们的群集MSMQ.2台服务器比仅向F5添加另一台VIP贵得多.
  2. 缺点
    • NServiceBus分发服务器允许您更轻松地查看消息积压,因为您可以监视的分发服务器上有一个队列.这使您很容易知道何时应添加更多工作节点.
    • NServiceBus分销商在控制工作线程数等方面比较聪明.为什么比NLB更能控制?(不确定这一个)

我准确地捕捉到了这个吗?我知道建议使用NServiceBus分销商,在我反对该建议之前,我想了解更多原因.

nservicebus nservicebus-distributor

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

NServiceBus:MSMQ交易不是很糟糕吗?

我正在学习NServiceBus和MSMQ.有人告诉我,MSMQ中的事务队列很糟糕,使用它们对性能非常不利.有谁知道为什么?我猜这是来自它使用DTC的概念,每个人都知道DTC不是真正的可扩展解决方案.在我看来,MSMQ与NServiceBus并没有那么糟糕有几个原因,但我不知道我是否理解它是如何完全运作的.从逻辑上看,我可以想到NServiceBus可能会使用交易的3个地方,以确保交付:

  1. 通过网络发送消息时,您可能希望使用事务来确保在丢弃消息之前消息已到达远程队列.
  2. 从本地队列中读取消息时,您可能希望确保在丢弃它之前成功处理它.
  3. 向多个订阅者发布消息时,您可能希望在丢弃它之前确保它到达所有订阅者.(我真的希望这不是NServiceBus所做的)

任何人都可以直接告诉我NServiceBus如何做到这一点?

transactions nservicebus distributed-transactions

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

SOLID原则和类内的硬代码配置

我最近在很多代码中都注意到,人们在类/方法的深处放置了硬编码配置(如端口号等),这使得很难找到,也无法配置.

这违反了SOLID原则吗?如果没有,是否还有另一个"原则",我可以向我的团队成员介绍为什么这不是一个好主意?我不想只说"这很糟糕,因为我不喜欢它",但我很难想出一个好的论点.

magic-numbers solid-principles

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

为什么我不应该在构造函数中调用我的依赖项?

我一直认为从构造函数中调用类依赖项是一种不好的做法,但是昨天无法向同事阐明原因.任何人都可以提供不这样做的充分理由吗?

c# constructor dependency-injection

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

在.NET应用程序中确定计算机名称的最佳方法是什么?

我需要获取运行我的.NET应用程序的机器的名称.做这个的最好方式是什么?

.net

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

在.NET中并发线程之间传递数据的最佳方法是什么?

我有两个线程,一个需要轮询一堆独立的静态资源来寻找更新.另一个需要获取数据并将其存储在数据库中.线程1如何告诉线程2有什么要处理的?

.net concurrency multithreading

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

不需要的虚线选择aroudn WPF RadioButtons的空文本

我有两个相邻的单选按钮,即使每个按钮都没有内容/文本,也会有一个丑陋的小点线框显示在旁边哪个有焦点(我认为它包裹着文本的地方)/label通常是).我可以摆脱这个吗?

wpf radio-button

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

使用MSBuild从.proj文件运行单元测试

我想使用MSBuild运行单元测试.这是我今天如何调用msbuild:

msbuild MySolution.sln

相反,我想使用名为"MyBuild.proj"的MSBuild项目文件,如下所示:

<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5" DefaultTargets="Build">
  <Target Name="Build">
    <ItemGroup>
      <SolutionToBuild Include="MySolution.sln" />
      <TestContainer Include="..\Output\bin\Debug\*unittests.dll"/>
    </ItemGroup>
  </Target>
</Project>
Run Code Online (Sandbox Code Playgroud)

然后调用命令行:

msbuild MyBuild.proj

出于某种原因,当我这样做时,命令会立即成功,并且构建甚至不会发生.我担心因为我是MSBuild的新手,我必须遗漏一些非常明显的东西.

我想我真的有两个问题:

  1. 为什么这甚至不能构建我的解决方案
  2. "TestContainer"元素是否适合执行我的测试

谢谢!

msbuild unit-testing

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