问题列表 - 第7679页

"Nonatomic"属性是什么意思?

"非原子"在此代码中的含义是什么?

@property(nonatomic, retain) UITextField *theUsersName;
Run Code Online (Sandbox Code Playgroud)

原子和非原子有什么区别?

谢谢

iphone cocoa properties objective-c ios

143
推荐指数
6
解决办法
7万
查看次数

单元测试是否不需要Debug.Assert()?

我已经准备好Mcconnell的" 代码完成 " 了一段时间.现在我在亨特和托马斯的" 实用程序员 "中再次阅读:使用断言!注意:我的意思是,不是单元测试断言Debug.Assert().

在SO问题之后什么时候应该使用Debug.Assert()?当使用断言过例外领域类的断言是发展有用的,因为"不可能"的情况下,可以发现相当快.它们似乎很常用.据我理解的断言,在C#中,它们通常用于检查"不可能"值的输入变量.

为了尽可能简化和隔离单元测试,我用nulls和"不可能"的虚拟输入(如空字符串)来提供类和方法.

此类测试明确记录,它们不依赖于某些特定输入.注意:我正在练习Meszaros的"xUnit测试模式"描述为Minimal Fixture.

这就是重点:如果我有一个保护这些输入的断言,它们会炸毁我的单元测试.

我喜欢断言编​​程的想法,但另一方面我不需要强迫它.目前我想不出任何用途Debug.Assert().也许有一些我想念的东西?你有什么建议,他们真的有用吗?也许我只是高估了断言的用处?或者也许我的测试方式需要重新审视?

编辑:调试的最佳实践单元测试期间的断言非常相似,但它没有回答困扰我的问题:如果我Debug.Assert()按照我的描述进行测试,我是否应该关心C#?如果是的话,它们在哪种情况下真的有用?在我目前的观点中,这样的单元测试将Debug.Assert()没有必要.

另一点:如果你真的认为,这是一个重复的问题,只需发表一些评论.

c# unit-testing

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

将设置移动到另一个配置文件

是否可以将applicationSettings移动到另一个配置文件,因为可以使用connectionStrings或appSettings?

当我使用设计器为我的Web应用程序创建设置时,我在web.config中获取了applicationSettings部分,例如:

  <applicationSettings>
    <TestWebApplication.Properties.Settings>
      <setting name="AnotherSetting" serializeAs="String">
        <value>Another setting value</value>
      </setting>
    </TestWebApplication.Properties.Settings>
  </applicationSettings>
Run Code Online (Sandbox Code Playgroud)

我希望能够将它们移动到另一个文件,如appSettings:

<appSettings configSource="config\appsettings.config"/>
Run Code Online (Sandbox Code Playgroud)

我正在使用一个项目,该项目通过使用设计器和web.config生成的类访问了很多设置,在多个环境之间很难维护.如果我可以强制Settings类使用appSettings而不是applicationSettings会更好.

可能吗?

在此先感谢您的帮助.

asp.net settings configuration web-config

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

这个面试问题对于php开发来说太难了.工作?

我们正在寻找帮助我们增强和维护基于PHP的高质量交易网络应用原型的人.理想情况下,谁可以很好地沟通,并进行前端和后端Web开发(以及智能/完成任务等).在其他更一般的事情中,我一直在使用这个问题:

鉴于这种:
    $foo = array(1, 3, 7);
写一个函数(在这个白板上)来对数组的值求和.

这对我来说似乎很容易,但是却引起了几个鹿头灯的情况,这总让我觉得自己像个恶棍.

我已经在这里和那里(包括乔尔和杰夫的)阅读了一些帖子,说候选人如何思考,设计技巧,激情等等比任何特定的技术技能更重要,我同意这一点.此外,我可以看到在白板上编程有点不切实际.OTOH,这对我来说似乎很基础,我倾向于将它视为前端开发人员之间的精细首过滤器(谁知道他们的方式围绕html,css,以及如何复制和粘贴js函数或二),以及真正能够编码的人.思考?

触摸更多信息:我对各种答案持开放态度:array_sum,for循环,foreach循环.哎呀,如果他们想写一个ArraySum类,那就太过分了,但还不错.使用javascript或其他语言会很好,如果他们对此感觉更舒服的话.即使是有轻微错误的尝试也没关系,但我已经完成了几次冻结,所以我只是想要理智地检查自己.

php

12
推荐指数
5
解决办法
6915
查看次数

如何在PowerShell中调用带输出参数的方法?

我正在编写一个脚本来开始使用PowerShell.我正在尝试转换一个工作的VBScript脚本,该脚本枚举远程Windows计算机上的映射网络驱动器.

其中一项任务是使用远程WMI来读取注册表并找到explorer.exe的进程所有者,以确定谁登录.这个指南似乎很容易.

但是,我需要调用的WMI方法是来自Win32_Process的GetOwner(),它需要两个输出参数来存储其返回值.

如何调用带输出参数的方法?当我尝试给它两个字符串时,我得到错误:Cannot find an overload for "GetOwner" and the argument count: "2"..MSDN页面说有两个参数,所以我不确定我做错了什么.

powershell wmi remote-registry

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

SQL选择多个总和?

假设我有一张桌子:

SELECT  SUM(quantity) AS items_sold_since_date,
        product_ID
FROM    Sales
WHERE order_date >= '01/01/09'
GROUP BY product_ID
Run Code Online (Sandbox Code Playgroud)

这将返回自特定日期以来销售数量的产品列表.有没有办法不仅选择这个总和,而且还有一个没有where条件的总和?我希望看到每个产品的特定日期以及所有(非日期限制)销售的销售额.

sql t-sql sql-server

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

如何序列化具有接口作为属性的对象?

我有2个接口IA和IB.

public interface IA
{
    IB InterfaceB { get; set;  }
}

public interface IB
{
    IA InterfaceA { get; set;  }

    void SetIA(IA value);
}
Run Code Online (Sandbox Code Playgroud)

每个接口引用另一个.

我正在尝试按以下定义序列化ClassA.

[Serializable]
public class ClassA : IA
{
    public IB InterfaceB { get; set; }

    public ClassA()
    {
        // Call outside function to get Interface B
        IB interfaceB = Program.GetInsanceForIB();

        // Set IB to have A
        interfaceB.SetIA(this);
    }
}

[Serializable]
public class ClassB : IB
{
    public IA InterfaceA { get; set; } …
Run Code Online (Sandbox Code Playgroud)

c# serialization interface

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

按日期排序显示NULLS首先是最近的日期

我有一个执行select语句的存储过程.我希望我的结果按日期字段排序,并显示所有记录首先是NULL日期,然后是最近的日期.

声明如下:

SELECT a,b,c,[Submission Date]
FROM someView
ORDER BY [Submission Date] ASC
Run Code Online (Sandbox Code Playgroud)

现在,这将首先显示所有具有NULL提交日期的记录,但是当我到达具有日期值的行时,它们不是视图中的最新日期.

如果我用DESC替换ASC,那么我按照我想要的顺序获取日期,但NULL值位于我的结果集的底部.

有没有办法构建我的查询,以便我可以在顶部显示空值,然后当有日期值时,为了命令它们从最近的下降到最早?

sql-server sql-server-2000

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

IE中的jQuery $ .get问题

我有一个登录表单,当用户注销时,该表单显示在我的所有页面的顶部.我当前的jQuery/javascript代码适用于Firefox 3但不适用于IE 7.代码查询页面,该页面只返回字符串"true"或"false",具体取决于登录是否成功.在我的$ .ready()函数调用中,我有以下内容......

$('#login_form').submit(function() {

        var email = $('input#login_email').val();
        var pw = $('input#login_password').val()

        $.get('/user/login.php', { login_email: email, login_password: pw }, function(data) {
            alert('get succeeded');
            if(data == 'true') {
                $('#login_error').hide();
                window.location = '/user/home.php';
                alert('true');
            }
            else {
                $('#login_error').show();
                alert('false');
            }

        });

        alert('called');

        return false;
    });
Run Code Online (Sandbox Code Playgroud)

在FF中,我已成功转移到预期页面.然而,在IE中,下面的警报"被叫"而没有别的.当我刷新页面时,我可以看到我已登录,因此$ .get调用显然正在通过,但回调函数似乎不被调用(即"获得成功"不会弹出).我也似乎没有收到任何javascript错误消息.

为什么这不适用于IE?

谢谢

编辑:由于有几个人问,每当我输入正确的电子邮件/密码或不正确的电子邮件/密码时,回调函数中都不会发生任何事情.如果我在输入正确的页面后手动刷新页面,我就会登录.否则,我不是.

编辑2:如果我data在回调函数中警告在IE中没有任何反应(我没有得到警告弹出窗口).在FF中,它会警告true有效的电子邮件/ pw组合以及false无效的组合.我正在使用jQuery 1.3.2.

编辑3:好的,伙计们,我在那里尝试了R. Bemrose的事情,我在返回的数据上得到了一个"解析错误".我只是从其他PHP脚本回显'true'或'false'.我也试过'是'和'不',但这仍然给了我一个解析错误.此外,除了FF之外,这适用于Chrome.

javascript jquery internet-explorer

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

php md5算法,给出与c#相同的结果

我在C#中有一个散列算法,简而言之,它是:

string input = "asd";

System.Security.Cryptography.MD5 alg = System.Security.Cryptography.MD5.Create();
System.Text.UTF8Encoding enc = new System.Text.UTF8Encoding();


byte[] hash = alg.ComputeHash(enc.GetBytes(input));
string output = Convert.ToBase64String(hash);

// outputs:   eBVpbsvxyW5olLd5RW0zDg==
Console.WriteLine(output);
Run Code Online (Sandbox Code Playgroud)

现在我需要在php中复制这种行为,

$input = "asd";
$output = HashSomething($input);
echo $output;
Run Code Online (Sandbox Code Playgroud)

我怎样才能实现它?

我检查了

  • MD5
  • utf8_decode
  • 函数utf8_encode
  • BASE64_ENCODE
  • BASE64_DECODE
  • url_decode

但我注意到php md5最终没有得到== ...我错过了什么?

注意:我无法更改C#行为,因为它已经实现并且使用此算法将密码保存在我的数据库中.

php c# md5

8
推荐指数
2
解决办法
5422
查看次数