小编Pet*_*erg的帖子

检查布尔值是否为真?

bool foo = true;

// Do this?
if (foo)
{
}

// Or this?
if (foo == true)
{
}
Run Code Online (Sandbox Code Playgroud)

我喜欢他们中的一个和另一个我的同事.结果是一样的,但是(更)正确的是什么?

c#

20
推荐指数
3
解决办法
10万
查看次数

使用基类作为参数的Func <>

我有一堆方法,我想检查一些元数据,所有这些方法都有不同的参数但参数都来自BaseClass.

public void CheckMethod(Func<BaseClass, Object> func)
{
    // Check method metadata here
}

public Object MethodToCheck(DerivedClass foo)
{
    // Whatever...
}

public void Test()
{
    CheckMethod(MethodToCheck);
}
Run Code Online (Sandbox Code Playgroud)

代码失败CheckMetadata(MethodToCheck),因为MethodToCheck将DerivedClass作为参数而不是BaseClass.我尝试过使用泛型:

public void CheckMethod<T>(Func<T, Object> func)

...

CheckMethod<DerivedClass>(MethodToCheck);
Run Code Online (Sandbox Code Playgroud)

我希望CheckMethod的调用尽可能少,并且更愿意只调用它CheckMethod(MethodToCheck).这可能吗?

c#

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

ASP.Net Web API帮助页面:记录复杂类型属性

我有一个post动作接收Person类型的FromBody参数.在HelpPage中,我获得有关Person paramater的信息.是否可以在Person中列出有关属性的信息,并使用XML文档文件中的文档来获取每个属性的描述?

public class PersonController : ApiController
{
    /// <summary>
    /// Add a person
    /// </summary>
    /// <param name="person">Person to add</param>
    /// <returns></returns>
    [HttpPost]
    public HttpResponseMessage Add([FromBody] Person person)
    {
        // ...

        return Request.CreateResponse(HttpStatusCode.Created);
    }
}

/// <summary>
/// A person
/// </summary>
public class Person
{
    /// <summary>
    /// The name of the person
    /// </summary>
    public String Name { get; set; }

    /// <summary>
    /// The age of the person
    /// </summary>
    public Int32 Age { get; set; …
Run Code Online (Sandbox Code Playgroud)

asp.net-web-api

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

自动更新

我有一个系统,有两个Web应用程序,一个Web服务,一个Windows服务和一个24小时在触摸屏上运行的WPF应用程序.所有这些都连接到数据库.

我希望能够通过将升级文件上载到数据库来升级所有这些应用程序,并设置升级发生的日期和时间.

我对如何做到这一点有一个想法.

  1. 应用程序运行一个线程以查找可用的升级.
  2. 找到升级后,文件将下载到应用程序的计算机.
  3. 下载完成后,应用程序将触发重新启动.
  4. 应用程序启动时,它会在本地计算机上查找升级文件.
  5. 如果可以升级,则应用程序会自行升级.

我不确定应该如何完成所有这些步骤,尤其是最后一步.但是我想对此有一些评论.这完全错了吗?我是在正确的轨道上吗?有关如何以此方式或以其他方式进行此操作的任何提示?

c# asp.net wpf

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

使用WCF导入WSDL时出现问题

我正在尝试使用WCF为我公司的一个合作伙伴提供的Web服务导入WSDL.Web服务是用Java编写的.我收到此错误:

警告:无法导入操作中名为FooException的错误getUnits.不支持的WSDL,故障消息部分必须引用一个元素.此错误消息不引用元素.如果您具有对WSDL文档的编辑权限,则可以通过使用"element"属性引用schema元素来解决问题.

好吧,实际上并不是一个错误,但在生成的代码中忽略了FooException.FooException包含我真正需要的错误代码.

我缩短了WSDL,只保留了其中一种方法.我也重命名了一些东西(比如异常).

<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions targetNamespace="urn:testws.foo.se"
                  xmlns:apachesoap="http://xml.apache.org/xml-soap"
                  xmlns:impl="urn:testws.foo.se"
                  xmlns:intf="urn:testws.foo.se"
                  xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
                  xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
                  xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
                  xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <!--WSDL created by Apache Axis version: 1.4
Built on Apr 22, 2006 (06:55:48 PDT)-->
  <wsdl:types>
    <schema targetNamespace="urn:testws.foo.se" xmlns="http://www.w3.org/2001/XMLSchema">
      <import namespace="http://schemas.xmlsoap.org/soap/encoding/" schemaLocation="http://schemas.xmlsoap.org/soap/encoding/"/>

      <complexType name="ArrayOf_soapenc_string">
        <complexContent>
          <restriction base="soapenc:Array">
            <attribute ref="soapenc:arrayType" wsdl:arrayType="soapenc:string[]"/>
          </restriction>
        </complexContent>
      </complexType>

      <complexType name="FooException">
        <sequence>
          <element name="errorCode" nillable="true" type="soapenc:string"/>
          <element name="errorDescription" nillable="true" type="soapenc:string"/>
          <element name="variables" nillable="true" type="impl:ArrayOf_soapenc_string"/>
        </sequence>
      </complexType>
      <element name="FooException" type="impl:FooException" nillable="true" />

      <complexType name="WsUnit">
        <sequence>
          <element name="id" nillable="true" type="soapenc:string"/>
          <element name="name" nillable="true" …
Run Code Online (Sandbox Code Playgroud)

wcf axis wsdl

5
推荐指数
0
解决办法
1551
查看次数

JS hasAttribute具有数据属性值

有没有一种本地方法(没有jQuery)来检查dom元素是否具有具有所选值的属性。例如:

//assume doc has
data-mod="do" defined
Run Code Online (Sandbox Code Playgroud)

这将是正确的:

document.hasAttribute('data-mod');

但这将是错误的:

document.hasAttribute('data-mod="do"')

有什么方法可以在本地使用DOM元素检查数据属性的值吗?

javascript jquery

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

将任何标识列重置为以1开头作为下一个值

我正在构建一个SQL脚本来重置数据库.为此,我想清空几个(不是所有)表并将其标识值重置为0.

对于我使用的一些表TRUNCATE TABLE,但是当外表键引用表时,这不起作用.对于我使用的那些表DBCC CHECKIDENT(TableName, RESEED, 0).这适用于大多数表,但并非适用于所有表.如果表从未有任何数据,则当前标识值为NULL而不是0:

CREATE TABLE TableName (Id int identity, Value varchar(10))
DBCC CHECKIDENT(TableName)

-- Checking identity information: current identity value 'NULL', current column value 'NULL'.
Run Code Online (Sandbox Code Playgroud)

如果我使用DBCC CHECKIDENT(TableName, RESEED, 0)它们,它们将具有0作为下一个标识值.我可以改为使用1作为重新设定的值,但是其中包含数据的表将从2开始.

是否可以在任何sys视图中找到下一个标识值?如果我只是可以将下一个值转换为变量,我可以使用它将下一个值设置为0或1.我已经尝试过,IDENT_CURRENT('TableName')但是对于NULL和0都表示1为下一个值.

并且,我不想要任何问题,例如"为什么你需要所有这些从1开始"或任何其他问题表明另一个结果而不是我要求的结果.

t-sql identity sql-server-2008-r2

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