问题列表 - 第11159页

如何将对象注入WCF验证器类

继续对WCF服务使用依赖注入,是否有任何方法可以将DI用于WCF 验证器,以便可以执行此操作:

public class DIValidator : UserNamePasswordValidator
{
    private readonly IService service;

    [Inject]
    public DIValidator(IService service)
    {
        this.service = service;
    }

    public override void Validate(string userName, string password)
    {
        service.Login(userName, password);
    }
}
Run Code Online (Sandbox Code Playgroud)

编辑 - 我试图将Dzmitry的建议应用于我的自定义行为扩展,因为我的验证器是在app.config中定义的.遗憾的是我得到一个MethodMissingException,因为wcf希望我的验证器有一个默认的构造函数:

System.MissingMethodException: No default constructor has been defined for this object.

at System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandle& ctor, Boolean& bNeedSecurityCheck)

这是我的行为类:

    public class DependencyInjectionServiceBehavior : BehaviorExtensionElement, IServiceBehavior
    {
        public void ApplyDispatchBehavior(ServiceDescription serviceDescription, ServiceHostBase serviceHostBase)
        {
            serviceHostBase.Credentials.UserNameAuthentication.CustomUserNamePasswordValidator = DISupport.Kernel.Get<IService>(); …
Run Code Online (Sandbox Code Playgroud)

.net wcf dependency-injection ninject wcf-security

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

在清洁度和速度方面,动态与静态内存的最佳实践

我有一个名为x的数组,其大小为6*sizeof(float).我知道声明:

float x[6];
Run Code Online (Sandbox Code Playgroud)

会在堆栈内存中为x分配6*sizeof(float).但是,如果我执行以下操作:

float *x;   // in class definition

x = new float[6];   // in class constructor

delete [] x;    // in class destructor
Run Code Online (Sandbox Code Playgroud)

我将为x分配6*sizeof(float)的动态内存.如果x的大小在类的生命周期中没有变化,就清洁度和速度的最佳实践而言(我隐约记得,如果不正确的话,堆栈内存操作比动态内存操作更快),我应该确定x是静态而不是动态分配的内存?提前致谢.

c++ memory-management

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

智能ASCII字符串表示

我有一个应用程序将二进制文件转换为ASCII文件.使用分析器我发现我花了25%的时间做了从BinaryWriter.Write(wchar [])调用的Encoding.GetBytes().这是完全正确的,因为我有许多类似于这个的结构:

m_writer.Write("some fancy long text".ToCharArray());
Run Code Online (Sandbox Code Playgroud)

你有任何聪明的想法如何避免这种编码转换?

我现在有一个想法是做类似的事情:

const byte[] SOME_FANCY_LONG_TEXT = Encoding.ASCII.GetBytes("some fancy ...");
// ... and later
m_writer.Write(SOME_FANCY_LONG_TEXT);
Run Code Online (Sandbox Code Playgroud)

但我必须手动执行许多此类条目.

c# string optimization encoding ascii

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

Java可消耗服务的.NET可空值类型的最佳替代方案

我们正在创建一些最初由.NET客户端使用的WCF服务,但将来将被Java客户端使用.

因此,我们希望避免在Java不支持的接口中使用任何数据类型.

我们所知道的具体是可以为空的值类型.

一个建议是我们可以通过使用字符串来表示,例如,可以为空的int来支持这些.因此空字符串表示null,否则要求字符串必须可解析为int.

任何人都可以推荐一个更好的选择,或者你会这样做?

.net java wcf nullable

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

VIM:零索引行号:设置号

使用VIM,可以很容易地显示任何给定文件的行号:

:set number
Run Code Online (Sandbox Code Playgroud)

但是,行编号为1索引,这意味着编号从1开始.通常这正是我想要的,但是我用来编译代码的特定工具报告零索引行号 - 即行号从零开始.

如何更改vim的行编号以进行补偿,以便查看vim缓冲区中的数字对应于工具提供的错误,此外,跳转到特定数字也与工具的数字相对应.

也就是说,如果该工具告诉我第98行有错误,我想通过键入"98G"而不是"97G"来跳转到那一行,我希望该行(在vim中真的是第97行)在行号列表中显示"98".

编辑:

虽然我可以过滤工具的输出,但相当简单,这不是一项简单的任务,因为该工具还输出对应于每一行的十六进制值,它具有相同的零索引形式,并且在信息性消息中输出好吧,不只是因为错误,我有很多这样的项目.

vim

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

访问Firefox中的文件下载对话框

是否有任何类型的API可以让我在Firefox中操作文件下载对话框?(我想访问用户做某事时出现的那个,而不是自己发起一个).

我想要做的是从Selenium访问这个对话框(以及Selenium"特权模式"是否足以访问chrome接口是我不确定的事情).

firefox selenium dialog

81
推荐指数
5
解决办法
11万
查看次数

PDO Prepared在单个查询中插入多行

我目前在MySQL上使用这种类型的SQL在一个查询中插入多行值:

INSERT INTO `tbl` (`key1`,`key2`) VALUES ('r1v1','r1v2'),('r2v1','r2v2'),...
Run Code Online (Sandbox Code Playgroud)

在PDO上的读数中,使用预处理语句应该比静态查询具有更好的安全性.

因此,我想知道是否可以使用预准备语句生成"通过使用一个查询插入多行值".

如果是,我可以知道如何实施它?

php pdo insert prepared-statement

136
推荐指数
8
解决办法
15万
查看次数

计算字段中的换行符并按顺序排序

我在一个recipes已插入的表中有一个字段mysql_real_escape_string,我想计算该字段中的换行符数,并使用此数字对记录进行排序.

ps该领域被称为成分.

感谢大家

php mysql

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

自动计时每个执行的命令并在Bash提示符下显示?

我经常忘记使用"time"命令显式地为执行添加前缀,理想情况下,我会在下一个shell提示符中看到最后一个命令花了多少实时时间(在每个命令上).

我已经浏览了bash文档,但找不到任何相关内容.

bash time prompt

12
推荐指数
2
解决办法
4684
查看次数

Mac开发人员使用什么自动构建系统?

我的团队目前正在使用buildbot来实现隔夜和持续集成构建和回归测试的自动化.对于构建和单元测试,构建器只调用一个脚本,该脚本从p4同步源然后运行xcodebuild.回归测试也由shell脚本启动,它们本身就是shell脚本和AppleScripts的组合.构建都在一个系统上执行,但随后buildbot触发测试在多台Mac上进行,具有不同的架构和操作系统组合.我喜欢buildbot的东西是自动触发器(因此只有在构建成功时才运行测试),并且报告包括瀑布视图以查看整体状态.

但是,我也看到了一些问题.协调构建的"主"进程要么是漏洞,要么只是有一个巨大的工作集,这意味着它消耗了几千兆字节的内存.偶尔网络问题意味着奴隶会丢失; 而不是稍后重试它将只是失败的构建.实际上,如果应该为依赖构建触发从属设备,则在第一次构建成功完成之后它将失败.

那么你们其他人用什么来自动化你的Xcode构建和单元测试呢?这些解决方案如何为您服务?你会推荐什么?

build-automation xcode continuous-integration xcodebuild

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