我使用StyleCop已经有一段时间了(我已经习惯了).我的朋友建议我也尝试CodeMaid.我注意到的第一件事是使用组织的差异.
Stylecop按字母顺序使用订单,其中首先列出系统使用,下面列出非系统使用.
CodeMaid也按字母顺序命令使用,但它不首先命令系统使用.它只按字母顺序排序
我遇到的另一件事是CodeMaid允许你在命名空间之外使用(据我所知,最好将所有使用放在命名空间内)
我想问一下使用的正确顺序是什么,最终为什么?
在我的应用程序中,所有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);不做这项工作,但我找不到办法,是否有可能?
颜色对话框中的自定义颜色集应使用以下代码设置为{Blue,Blue}:
colorDialog1.CustomColors = new int[] { System.Drawing.Color.Blue.ToArgb(), 0xFF0000 };
colorDialog1.ShowDialog();
Run Code Online (Sandbox Code Playgroud)
但是,我得到了一个不同的集合{Black,Blue}:

不知道我在这里做错了什么?谢谢.
我有一个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) 我正在玩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) 使用溢出的视图控制器时,我有一个主视图和详细信息视图.当iPad处于纵向模式时,主视图将显示为弹出窗口.如何调整masterview(弹出视图)的高度?我试过了:
self.contentSizeForViewInPopover = CGSizeMake(320.0, 2 * 52.0);
Run Code Online (Sandbox Code Playgroud)
但我不确定要设置这个吗?

objective-c ipad uisplitviewcontroller uipopovercontroller ios
我收到了可怕的错误:
Run Code Online (Sandbox Code Playgroud)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.
在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?
我还确保完成后我的所有连接都已关闭.
为了更多地了解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) 我在正则表达式中并不精通,所以我不确定如何实现以下内容:
我想从输入中捕获任何可能会或可能不会被'$'字符包围的任意字符串.如果字符串开头出现'$'字符,则必须存在末尾的'$'字符.
目前我有
^\w+([_.-]\w+)*$
Run Code Online (Sandbox Code Playgroud)
大致翻译为:
所以有效的匹配将是:
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) 我正在尝试发布以下请求,但我收到了回复"Unsupported Media Type"。我正在设置Content-Type到application/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) c# ×8
linq ×2
.net ×1
asp.net ×1
asp.net-core ×1
asp.net-mvc ×1
bigdecimal ×1
colordialog ×1
delegates ×1
func ×1
ios ×1
ipad ×1
java ×1
json ×1
linq-to-xml ×1
objective-c ×1
parsing ×1
regex ×1
sql-server ×1
string ×1
stylecop ×1