小编Phi*_*yNJ的帖子

CodeMaid与Stylecop使用组织

我使用StyleCop已经有一段时间了(我已经习惯了).我的朋友建议我也尝试CodeMaid.我注意到的第一件事是使用组织的差异.

Stylecop按字母顺序使用订单,其中首先列出系统使用,下面列出非系统使用.

CodeMaid也按字母顺序命令使用,但它不首先命令系统使用.它只按字母顺序排序

我遇到的另一件事是CodeMaid允许你在命名空间之外使用(据我所知,最好将所有使用放在命名空间内)

我想问一下使用的正确顺序是什么,最终为什么?

c# stylecop

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

创建自定义BigDecimal类型

在我的应用程序中,所有BigDecimal数字都缩放为两位小数.换句话说,每次我在代码中创建一个新的BigDecimal时,我也需要使用方法比例:

BigDecimal x = BigDecimal.ZERO;
x.setScale(2, RoundingMode.HALF_UP);
Run Code Online (Sandbox Code Playgroud)

因此,为了最大限度地减少工作量,我想创建自定义BigDecimal类型,例如:

public class CustomBigDecimal extends BigDecimal {

    public CustomBigDecimal(String val) {
        super(val);
        this.setScale(2, RoundingMode.HALF_UP);
    }

}
Run Code Online (Sandbox Code Playgroud)

我知道this.setScale(2, RoundingMode.HALF_UP);不做这项工作,但我找不到办法,是否有可能?

java bigdecimal

16
推荐指数
3
解决办法
2343
查看次数

在ColorDialog中设置CustomColors

颜色对话框中的自定义颜色集应使用以下代码设置为{Blue,Blue}:

colorDialog1.CustomColors = new int[] { System.Drawing.Color.Blue.ToArgb(), 0xFF0000 };
colorDialog1.ShowDialog();
Run Code Online (Sandbox Code Playgroud)

但是,我得到了一个不同的集合{Black,Blue}:

在此输入图像描述

不知道我在这里做错了什么?谢谢.

c# colordialog

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

Linq to XML根据属性值选择节点

我有一个xml文件,它返回一组属性值唯一的元素.这提出了一个问题,因为我无法通过其名称选择节点:

<doc>
    <float name="score">1.2873721</float>
    <arr name="2_category">
        <long>3021</long>
    </arr>
    <arr name="ATR_FamilyName">
        <str>Some Cookbook </str>
    </arr>
    <arr name="ATR_IsFamily">
        <str>0</str>
    </arr>
    <arr name="ATR_SellPrice">
        <str>49.95</str>
    </arr>
    <arr name="ATR_VendorId">
        <str>ABC</str>
    </arr>
    <arr name="ATR_VendorName">
        <str>WROX</str>
    </arr>      
</doc> 
Run Code Online (Sandbox Code Playgroud)

我正在使用linq来填充"Product"类.我可以按位置选择元素,但如果节点不存在,这就成了问题.有没有办法根据其属性的值选择节点?在下面的示例中,如果@name属性="ATR_FamilyName",我可以获取arr节点吗?在xpath中它将是:

doc/arr[@name = 'ATR_FamilyName']/str
Run Code Online (Sandbox Code Playgroud)

这是我的linq to xml查询:

var query = from rt in results
   where (String)rt.Descendants().ElementAt(5).Element("str").Value == "0"
   select new Product.Product
             {
                FamilyName = (String)rt.Descendants().ElementAt(3).Value
                // doc/arr[@name = 'ATR_FamilyName']/str - select Family Name is arr/@name 'ATR_FamilyName'                              
                MorePropertiestoset....                              
              };   
Run Code Online (Sandbox Code Playgroud)

c# linq linq-to-xml

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

project.json解决方案项目参考

我正在玩ASP.NET 5(vNext),我想将project.json文件的引用添加到我的数据库项目中.这里是:

project.json

{
    "webroot": "wwwroot",
    "version": "1.0.0-*",
    "exclude": [
        "wwwroot"
    ],
    "packExclude": [
        "**.kproj",
        "**.user",
        "**.vspscc"
    ],
    "dependencies": {
        "Microsoft.AspNet.Server.IIS": "1.0.0-beta1",
        "EntityFramework.Commands": "7.0.0-beta1",
        "EntityFramework": "7.0.0-beta1",
        "EntityFramework.SqlServer": "7.0.0-beta1",
        "Microsoft.AspNet.Identity.EntityFramework": "3.0.0-beta1",
        "Microsoft.AspNet.Security.Cookies": "1.0.0-beta1",
        "DataManagement": ""    <----- THIS IS MY PROJECT WITHIN SOLUTION
    },
    "frameworks": {
        "aspnet50": { },
        "aspnetcore50": { }
    }
}
Run Code Online (Sandbox Code Playgroud)

DataManagement项目只是类库,但我尝试使用ASP.NET 5类库.两种项目类型都失败了,这就是我在visual studio中看到的:

解决方案视图

项目正在正确构建并生成(当然)Datamanagement.dll,但Web项目找不到此库.

确切地说,下面是两个项目的目标版本:

DataManagement: KRE-CLR-x86.1.0.0-rc1-10846
Web:            KRE-CLR-x86.1.0.0-rc1-10846
Run Code Online (Sandbox Code Playgroud)

c# asp.net asp.net-core

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

在作为弹出窗口触发时更改MasterViewController的大小

使用溢出的视图控制器时,我有一个主视图和详细信息视图.当iPad处于纵向模式时,主视图将显示为弹出窗口.如何调整masterview(弹出视图)的高度?我试过了:

 self.contentSizeForViewInPopover = CGSizeMake(320.0, 2 * 52.0); 
Run Code Online (Sandbox Code Playgroud)

但我不确定要设置这个吗?

在此输入图像描述

objective-c ipad uisplitviewcontroller uipopovercontroller ios

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

什么是默认的MaxPoolSize?

我收到了可怕的错误:

Timeout expired. The timeout period elapsed prior to obtaining a connection from 
the pool. This may have occurred because all pooled connections were in use 
and max pool size was reached.
Run Code Online (Sandbox Code Playgroud)

在sql中我看到我通过运行只打开了116个连接:

SELECT 
    DB_NAME(dbid) as DBName, 
    COUNT(dbid) as NumberOfConnections,
    loginame as LoginName
FROM
    sys.sysprocesses
WHERE 
    dbid > 0
GROUP BY 
    dbid, loginame
;
Run Code Online (Sandbox Code Playgroud)

116似乎很低,我目前没有设置MaxPoolSize.什么是默认的MaxPoolSize?

我还确保完成后我的所有连接都已关闭.

c# sql-server

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

使用Func委托返回值

为了更多地了解Func Delegates和Expression树,我将一个简单的例子放在一起,但是我没有得到我期望的结果.下面是我的代码,它有一个Func,需要一个Params类和一个产品列表.我们的想法是将Params类应用为针对产品列表的过滤器.正如我所说,这只是我练习如何运作的练习.

我期望委托返回至少一个Product对象,但它返回null.

static void Main(string[] args)
{
   Products products = CreateProducts();

   Params param = new Params { Val = "ABC"};

   Func<Params, Products, IEnumerable<Product>> filterFunc = 
       (p, r) => r.Where(x => x.Sku == p.Val).AsEnumerable();

   Products prods = filterFunc(param, products).ToList() as Products;// returns null
}


private static Products CreateProducts() 
{
   return new Products 
   {
       new Product{
           Price = 25.00,
           Sku = "ABC"
       },
       new Product{
           Price = 134.00,
           Sku = "DEF"
       }
    };
}
Run Code Online (Sandbox Code Playgroud)

类别:

public class Params 
{
    public String …
Run Code Online (Sandbox Code Playgroud)

c# linq delegates func

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

捕获可选的周围字符

我在正则表达式中并不精通,所以我不确定如何实现以下内容:

我想从输入中捕获任何可能会或可能不会被'$'字符包围的任意字符串.如果字符串开头出现'$'字符,则必须存在末尾的'$'字符.

目前我有

^\w+([_.-]\w+)*$
Run Code Online (Sandbox Code Playgroud)

大致翻译为:

  1. 任意单词字符
  2. 捕获组的开始
  3. 任何字符'_','.',' - '
  4. 在可选之前\n

所以有效的匹配将是:

test
test-5
test.1.3
test-alpha.2
Run Code Online (Sandbox Code Playgroud)

现在我想让这成为可能

$test$
Run Code Online (Sandbox Code Playgroud)

但不是...

$test (or test$)
Run Code Online (Sandbox Code Playgroud)

c# regex string parsing

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

HttpClient - “不支持的媒体类型”

我正在尝试发布以下请求,但我收到了回复"Unsupported Media Type"。我正在设置Content-Typeapplication/json。任何帮助,将不胜感激。

var json = JsonConvert.SerializeObject(request);
var stringContent = new StringContent(json, UnicodeEncoding.UTF8, "application/json");
MyResult result = new MyResult();
using (var client = new HttpClient())
{
    client.BaseAddress = new Uri(baseurl);
    client.DefaultRequestHeaders.Clear();               
    client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", base64ApiKey);
    client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));               
    HttpResponseMessage Res = await client.PostAsync(method, stringContent);
    if (Res.IsSuccessStatusCode)
    {
        var response = Res.Content.ReadAsStringAsync().Result;
        result = JsonConvert.DeserializeObject<MyResult>(response);
    }               
}
Run Code Online (Sandbox Code Playgroud)

.net c# asp.net-mvc json

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