在浏览一些旧代码时,我遇到了类似于以下内容的内容:
class Base
{
public:
virtual int Func();
...
};
class Derived : public Base
{
public:
int Func(); // Missing 'virtual' qualifier
...
};
Run Code Online (Sandbox Code Playgroud)
代码编译良好(MS VS2008)没有警告(级别4)并且它按预期工作 - Func即使虚拟限定符在派生类中缺失也是虚拟的.现在,除了造成一些混淆之外,这段代码是否有任何危险,或者我应该更改所有内容,添加virtual限定符?
我想知道如何告诉NHibernate解决我的POCO域对象的依赖关系.
我发现像CalculateOrderTax这样的方法应该在Domain对象中,因为它们编码特定于域的业务规则.但是,一旦我有两个违反SRP的话.
将这些方法提取到Strategy类是没有问题的,但我想知道如何使NHibernate加载它们.
在将对象移交给更高层之前,循环访问存储库中的对象列表以进行基于Dependecy注入的获取/设置似乎不是一个好的解决方案.
我现在也在使用Castle Windsor进行Depency注射.
我需要通过向命令行工具提供页面URL来创建页面的屏幕截图.我找到了以下应用程序:将HTML转换为图像.这个工具还可以,但需要更灵活的应用程序.我需要有能力执行以下操作:
我想创建一个应用程序,通过URL访问,拍摄,然后将图像发送到电子邮件来测试网站.
有没有人有解决这些问题的经验?
我有一个Customer类.
public class Customer
{
private string _id;
private string _name;
// some more properties follow
Run Code Online (Sandbox Code Playgroud)
我继承了EqualityComparer表单MyEqualityComparer(Customer).
我打算在LINQ查询中使用它.
MyEqualityComparer用于在两个对象之间进行部分检查.
如果customer.id和customer.name匹配,我将对象视为相等.
public class MyComparer : System.Collections.Generic.EqualityComparer<Customer>
{
public override bool Equals(Customer x, Customer y)
{
if (x.Id == y.Id && x.Name == y.Name)
return true;
else
return false;
}
public override int GetHashCode(Customer obj)
{
return string.Concat(obj.Id,obj.Name).GetHashCode();
}
}
Run Code Online (Sandbox Code Playgroud)
我提到 生成哈希码.
关于连接字符串并将其用作哈希码,我不太确定.
这是安全和听起来我想做什么?
我终于有了一个对控制固件感兴趣的硬件人.
这适用于vxworks固件.龙卷风(2.2.1)gui创建了一个项目文件,其中包含已修改的文件列表,但它们似乎来自整个目录树.
所以我很想控制那些文件.
我的公司即将实施一种新架构,我们在其中提出BizTalk(我们是微软商店)作为SOA中的企业服务总线(ESB)(请不要引用面向服务的歧义)环境.
我们的业务是通过我们的新订单捕获GUI获取订单,该GUI必须连接到我们的客户数据库,产品目录,订购系统和其他一些辅助系统,每个系统都将作为WCF服务公开,然后将订单传递给我们的订单管理和其他下游系统实现,最后到我们的开票系统开发票.目前,每个系统都有自己的GUI,并使用手动过程在它们之间传递信息,以便自动化和集成自然思想,引入ESB来连接它们.
我对ESB的一些理由是,总线会担心如何连接系统(每个系统都是不可知的,对任何其他系统一无所知)以及如何格式化/翻译信息.很有可能在未来,一些现有系统将换成我们公司家族中的新系统或系统.
这似乎对我有意义,但我现在遇到了一些阻力,为什么在点对点解决方案足够时引入它.
不幸的是在公司历史上(在我预约之前)初步尝试引入BizTalk失败了,但我相信它有一个地方,我可以提供它.
我的问题可能不是关于BizTalk,而是在我描述的场景中ESB是否是一个好主意,何时引入ESB是有意义的?
我正在编写一个只接收来自本地主机的电话的服务.性能很重要,所以我想我会尝试NetNamedPipeBinding而不是NetTcpBinding,看看我是否能看到任何明显的性能提升.
如果客户端在对服务器执行了一个或多个请求之后,在较长时间内处于空闲状态,则下一个请求似乎会因绑定中的某些空闲超时而失败.服务重新启动时也会发生同样的事情.
我需要我的客户端能够在允许的情况下保持连接打开,以避免与设置新连接相关的开销.我还需要能够不时重新启动服务,并让客户端在发现连接已终止时自动重试.
我知道这可以通过NetTcpBinding中的可靠性内容来支持,但是如何在NetNamedPipeBinding中获得相同级别的重新连接可靠性呢?它甚至可能吗?
这个问题在某种程度上是学术性的,因为它不是使用NetNamedPipes的要求,我可以很容易地采用它来使用tcp绑定,但它是一个痒,我真的想要抓它.
如果在C#自动属性中必须获取和设置get和set,为什么我必须打扰指定"get; set;" 什么?
我在为以下任务创建正则表达式时遇到问题:
假设我们有类似HTML的文本:
<x>...<y>a</y>...<y>b</y>...</x>
Run Code Online (Sandbox Code Playgroud)
我想<y></y>在给定<x>标签内的标签内获得一组值,因此上面示例的结果将是两个元素["a","b"]的集合.
此外,我们知道:
<y>标签不能包含在其他<y>标签中 ... 可以包含任何文本或其他标签.如何使用RegExp实现这一目标?