小编Jos*_*off的帖子

为什么类中的内部事件不能在内部接口上实现事件?

我有一个定义一些事件的内部接口和一个实现接口的示例类:

internal interface IMyEvents
{
    event EventHandler MyEvent;
}

public class MyClass : IMyEvents
{
    internal event EventHandler MyEvent;

    public void DoSomething()
    {
        if (MyEvent != null) MyEvent(this, new EventArgs());
    }
}
Run Code Online (Sandbox Code Playgroud)

当我尝试编译时,我收到以下错误:

error CS0737: 'MyClass' does not implement interface member '.IMyEvents.MyEvent'. 'MyClass.MyEvent' cannot implement an interface member because it is not public.
Run Code Online (Sandbox Code Playgroud)

这里发生了什么?这是一个内部界面,所以我不明白为什么事件必须公开.

c#

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

为什么我无法将 AWS EC2 实例加入 Active Directory?

根据Amazon 的文档,我无法手动将 EC2 实例加入 Amazon Web Services 中的目录服务简单 AD 。

  • 我的实例附加了一个安全组,该安全组仅允许来自我的 IP 地址的 HTTP 和 RDP。
  • 我正在输入 FQDN foo.bar.com
  • 我已验证 Simple AD 和 EC2 实例位于同一(目前是公共)子网中。
  • DNS 似乎正在工作(因为tracert我的 IP 给出了我公司的域名)。
  • 我无法tracert访问简单 AD 的 IP 地址(它甚至没有到达第一跳)
  • 我无法tracert访问互联网上的任何内容(与上面相同)。
  • arp -a显示了 Simple AD 的 IP,因此看来我的实例已收到来自 Simple AD 的流量。

这是我收到的错误消息:

当 DNS 查询用于查找域“aws.bar.com”的 Active Directory 域控制器 (AD DC) 的服务位置 (SRV) 资源记录时,发生以下错误:

错误是:“此操作返回,因为超时期限已过。” (错误代码 0x000005B4 ERROR_TIMEOUT)

该查询针对 _ldap._tcp.dc._msdcs.aws.bar.com 的 SRV 记录

此计算机用于名称解析的 DNS 服务器没有响应。此计算机配置为使用具有以下 IP 地址的 DNS …

windows active-directory amazon-web-services

3
推荐指数
1
解决办法
6690
查看次数

我可以在不引用Microsoft.VisualBasic的情况下以c#VB6样式拆分字符串吗?

不幸的是,似乎没有string.Split(字符串分隔符),只有string.Split(char speparator).

我想基于一个多字符分隔符,即VB6分解我的字符串.是否有一个简单的(即,不是通过引用Microsoft.VisualBasic或不得不学习RegExes)的方式在c#中执行此操作?

编辑:使用.NET Framework 3.5.

.net .net-3.5 c#-3.0

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

如何暂停 ReSharper 5.0 并恢复 Visual Studio 2010 中的默认按键设置?

我有一个包含许多项目的项目,即使在一台相当不错的机器(8GB RAM、混合固态硬盘、Core 2 Duo 处理器)上,启用 ReSharper 后性能也很糟糕。

我能够找到如何暂停 ReSharper,但当我关闭 ReSharper 时,Visual Studio 的默认键绑定(例如 Ctrl-[逗号] 导航到类型)似乎不起作用。

禁用 ReSharper 时如何恢复默认键绑定(启用 ReSharper 时如何恢复 ReSharper 绑定)?

visual-studio-2010 resharper-5.0

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

为无法找到的实体发出命令时,适当的.NET异常类型是什么?

我的许多应用程序服务层方法都是这样的:

    public class Command
    {
        public int Id { get; private set; }
    }

    public class Repository
    {
        public Entity Load(int id)
        {
            // the usual stuff here
        }
    }

    public class AppService
    {
        public void Execute(Command command)
        {
            var entity = new Repository().Load(command.Id);
            if (entity == null)
            {
                // what type of exception do I throw here?
            }
        }
    }
Run Code Online (Sandbox Code Playgroud)

如果客户端为无法找到的实体发出命令,我应该抛出什么类型的异常? MSDN上的InvalidOperationException规范指的是"对象状态"无效.看起来这里并不适用 - 这真的只是一个糟糕的命令.

有什么建议?

.net domain-driven-design

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

为什么在运行sqlldr后禁用了我的外键?

在构建过程中,我们运行sqlldr用一些示例数据填充数据库。在sqlldr接触的每个表上,运行sqlldr后,将禁用外键。

根据此Ask Tom帖子

sqlldr将仅禁用与其他表相关的约束(例如:外键),而不禁用主键。

SQLLDR将仅重新启用IT禁用的约束,而不是您自己创建的约束。

我认为这意味着应该启用我的外键。

我们所有的sqlldr控制文件都与此类似:

options (direct=true, rows=20000)
load data
infile "clinical_code.txt"
append
into table clinical_code
fields terminated by "|"
trailing nullcols
Run Code Online (Sandbox Code Playgroud)

rows计数有意大于数据文件中的行数,因为如果较小,它将破坏我的主键

为什么sqlldr不像文档所示暗示那样重新启用我的外键?

如果需要,我可以编写SQL重新启用索引。我想知道为什么会这样。

使用传统的加载路径是一种不错的选择,但是这将使我们的构建过程增加2分钟的时间,如果可能的话,我希望避免这种情况。

oracle sql-loader

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

我应该如何命名枚举,描述字段是隐藏的,可选的还是必需的?

我有一个控件,有一堆字段,我希望用户能够配置.

我原来有这个:

    public bool Phone1Visible;
    public bool Phone1Required;
Run Code Online (Sandbox Code Playgroud)

然后意识到我不想处理必须再次验证隐藏的必填字段,所以我想出了这个:

public enum YOUR_NAME_HERE
{
    Hidden,
    Optional,
    Required
}
Run Code Online (Sandbox Code Playgroud)

你会说这个枚举的名字是什么?我在想"FieldCriticality",但这听起来有点罗嗦.

建议欢迎.

c# enums

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

ASP.NET MVC 3不引人注目的客户端验证需要哪些文件才能工作?

ASP.NET MVC 3不引人注目的客户端验证需要哪些文件才能工作?

它与jQuery 1.6.3兼容吗?

asp.net-mvc jquery jquery-plugins jquery-validate asp.net-mvc-3

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

Oracle是否允许IN子句中的ORDER BY?

当我运行此查询时,Oracle给了我一个错误(ORA-00907:缺少右括号):

select * 
from reason_for_appointment 
where reason_for_appointment_id in 
(
    select reason_for_appointment_id 
    from appointment_reason 
    where appointment_id = 11 
    order by appointment_reason_id
)
Run Code Online (Sandbox Code Playgroud)

但是,当我只运行子查询时,没有错误.

任何人都可以解释问题是什么?

oracle plsql ora-00907

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

如何在svn中创建目录不可变?

我们在svn中有某些目录,在发布后不应该被触及.虽然我可以在目录中的每个文件上放置svn:needs-lock,但我想防止添加和删除以及修改.

有没有办法做到这一点?

svn tortoisesvn

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

物化集合的最低类型要求是什么?

如果我正在序列化一个对象集合,那么保证集合实现的最小类型是什么(而不是表达式的结果)?

例如.这不应该是可能的:

var message = new MyMessage {
  Recipients = someCollection.Select... // <- this can't be deserialized without calling ToList()
}
Run Code Online (Sandbox Code Playgroud)

我知道IList会做这个工作,但想知道这是否是最低要求.

.net c#

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