这两种方法表现出重复:
public static Expression<Func<Foo, FooEditDto>> EditDtoSelector()
{
return f => new FooEditDto
{
PropertyA = f.PropertyA,
PropertyB = f.PropertyB,
PropertyC = f.PropertyC,
PropertyD = f.PropertyD,
PropertyE = f.PropertyE
};
}
public static Expression<Func<Foo, FooListDto>> ListDtoSelector()
{
return f => new FooDto
{
PropertyA = f.PropertyA,
PropertyB = f.PropertyB,
PropertyC = f.PropertyC
};
}
Run Code Online (Sandbox Code Playgroud)
我怎样才能重构以消除这种重复?
更新:哎呀,我忽略了一个重要的观点.FooEditDto是FooDto的子类.
目前我的代码看起来像这样:
# Assign values for saving to the db
$data = array(
'table_of_contents' => $_POST['table_of_contents'],
'length' => $_POST['length']
);
# Check for fields that may not be set
if ( isset($_POST['lossless_copy']) )
{
$data = array(
'lossless_copy' => $_POST['lossless_copy']
);
}
// etc.
Run Code Online (Sandbox Code Playgroud)
这会导致无穷无尽的if语句......即使使用三元语法,它仍然是凌乱的.有没有更好的办法?
我在ASP.NET MVC应用程序中有类似的内容:
IEnumerable<string> list = GetTheValues();
var selectList = new SelectList(list, "SelectedValue");
Run Code Online (Sandbox Code Playgroud)
甚至认为选定的值已定义,它在视图中未被选中.我有这种感觉,我在这里错过了一些东西,所以如果有人能把我的痛苦赶出去!
我知道我可以使用烦人的类型来提供密钥和值,但如果我不需要,我宁愿不添加额外的代码.
编辑:ASP.NET MVC RTM已修复此问题.
Pexpect可用于在python中自动执行任务(不需要安装TCL).这个类中最简单的例程之一是'run()'例程.它接受预期问题模式的字典作为键,响应作为值.例如
pexpect.run('scp foo myname@host.example.com:.',events = {'(?i)password':mypassword})
我知道通常'?' 用于表示字符串中前一个文字的0或1次出现(对于正则表达式).但是,在这里,这似乎并不是意思.
专家可以评论一下它是什么吗?
有没有人曾经使用过C++的"贴牌新品"?如果是这样,那该怎么办?在我看来,它只对内存映射硬件有用.
我有几个相关的问题:
1)是否可以使我的程序更改文件类型关联,但仅在运行时?你觉得这个行为有什么问题吗?
2)我看到的另一个选项是让用户决定使用我的应用程序打开或恢复默认关联...类似于:"捕获所有.lala文件"或"恢复.lala关联".我怎样才能做到这一点?你认为这是最好的方法是什么?
HttpBrowserCapabilities.Crawler属性(http://msdn.microsoft.com/en-us/library/aa332775(VS.71).aspx)如何工作?我需要检测合作伙伴的自定义抓取工具,此属性返回false.
在哪里/如何添加其用户代理以使此属性返回true?除了创建我自己的用户代理检测机制之外的任何其他方式?
我很好奇在C#/ ASP.NET中对DropDownList进行排序的最佳路线(更多关注简单性,而不是速度或效率) - 我已经看了一些建议,但他们没有点击我.
编辑:伙计们,我无法控制数据如何进入DropDownList - 我无法修改SQL.
我在C#中有一个通用的对象列表,并希望克隆列表.列表中的项目是可复制的,但似乎没有选项可做list.Clone()
.
有一个简单的方法吗?
c# ×5
.net ×2
python ×2
asp.net ×1
asp.net-mvc ×1
c++ ×1
clone ×1
compression ×1
css ×1
file-type ×1
forms ×1
generics ×1
lambda ×1
list ×1
minify ×1
new-operator ×1
php ×1
post ×1
refactoring ×1
regex ×1
registry ×1
web-crawler ×1