我似乎无法找到一个可以解决的整体类型:
string foo = "9999999999999999999999999999999999999999999999999999999";
long value;
if(long.TryParse(foo, out value))
{
// do something
}
Run Code Online (Sandbox Code Playgroud) 为什么很多人都这样做:
public enum EmployeeRole
{
None = 0,
Manager = 1,
Admin = 2,
Operator = 3
}
Run Code Online (Sandbox Code Playgroud)
而不只是做:
public enum EmployeeRole
{
None,
Manager,
Admin,
Operator
}
Run Code Online (Sandbox Code Playgroud)
有优势吗?
我只需要知道值是否为数字.我不需要对价值做任何事情.这是最好的方法吗?感觉很脏,创建一个我将永远不会使用的变量:
int val;
if(int.TryParse(txtFoo.Text, out val))
{
....
}
Run Code Online (Sandbox Code Playgroud) 如果我想在使用存储库模式和实体框架时实现缓存,我不能只在Entity Framework之外做一些简单的逻辑来处理缓存吗?
例如
if(Cache[ProductsKey] != null)
{
return ConvertToProducts(Cache[ProductsKey]);
}
else
{
var products = repository.Products;
Cache[ProductsKey] = products;
return products;
}
Run Code Online (Sandbox Code Playgroud)
似乎很多人都过于复杂了.或者这样做会以某种方式限制?
我正在对一些 CRUD 操作进行单元测试。我的问题是:
1)如果我需要测试Add、Get和Delete方法。持久层是数据库。由于我需要一个测试对象来获取和删除,我应该将所有 3 个对象合并为一个 [TestMethod],还是将它们分成 3 个方法并在获取和删除测试之前重新添加对象?
我刚刚发现它使用的一些代码System.Data.SqlTypes.SqlString?我以前没见过它.我总是应该在向sql server发送字符串时使用它吗?
例如
cmd.Parameters.Add("@FirstName", (SqlString)FirstName);
Run Code Online (Sandbox Code Playgroud) 如果我有一个如下所示的实用方法,我该如何进行单元测试呢?好像我想确定输出是否正确我似乎必须将代码构建到测试方法中?我可以看到是否存在条件逻辑,例如输入字符串是否为空返回null,但测试正确的输出似乎很棘手.
public static string EncodeTo64(string input)
{
byte[] b = System.Text.ASCIIEncoding.ASCII.GetBytes(input);
string returnValue = System.Convert.ToBase64String(b);
return returnValue;
}
Run Code Online (Sandbox Code Playgroud) c# ×6
.net ×2
unit-testing ×2
caching ×1
coding-style ×1
entity ×1
enums ×1
frameworks ×1
sql ×1
tfs ×1
types ×1