我是Automapper框架的新手.我有一个域类和一个DTO类,如下所示:
public class Employee
{
public long Id {get;set;}
public string Name {get;set;}
public string Phone {get;set;}
public string Fax {get;set;}
public DateTime DateOfBirth {get;set;}
}
public class EmployeeDto
{
public long Id {get;set;}
public string FullName {get;set;}
public DateTime DateOfBirth {get;set;}
}
Run Code Online (Sandbox Code Playgroud)
注意:类的属性" Name "的名称与Employee
类的属性" FullName "的名称不同EmployeeDto
.
这是将Employee
对象映射到的代码EmployeeDto
:
Mapper.CreateMap<Employee, EmployeeDto>(); // code line (***)
EmployeeDto dto = Mapper.Map<Employee, EmployeeDto>(employee);
Run Code Online (Sandbox Code Playgroud)
我的问题是:如果我想将Employee
(源类)映射到EmployeeDto
(目标类),我该如何指定映射规则?换句话说,我应该如何处理上面的代码行(***)?
有没有办法有效地做到这一点,也许通过toBuffer或方法?我真正的问题是我正在构建一个解析器列表,如下所示:
lazy val nodes: Parser[List[Node]] = phrase(( nodeA | nodeB | nodeC).*)
Run Code Online (Sandbox Code Playgroud)
但是在构建它之后,我希望它成为缓冲区 - 我只是不确定如何直接从解析器构建缓冲区.
ASP.NET MVC中的模型绑定很棒,但它遵循区域设置.在我的语言环境中,小数点分隔符是逗号(','),但用户也使用点('.'),因为它们懒得切换布局.我想在一个地方为decimal
我的模型中的所有字段实现这个.
我应该为decimal
类型实现自己的Value Provider(或事件Model Binder),还是我错过了一些简单的方法来做到这一点?
今天我在微软的Edge浏览器中发现了一些非常奇怪的行为,其中事件的deltaX
价值显然是倒置的!这特别令人惊讶,因为这与我测试过的所有其他浏览器不一致,包括返回预期值的Internet Explorer 11.wheel
看到这个问题很简单,只需运行以下代码,然后使用鼠标滚轮或触控板即可.
window.addEventListener('wheel', function(e) {
console.log(e.deltaX, e.deltaY);
});
Run Code Online (Sandbox Code Playgroud)
为方便起见,我创建了一个完整的页面示例(片段对此非常棘手):
向下滑动会给出正值,并且在Edge,IE和其他浏览器中提供负值会产生预期值.但是,在Edge中,left左侧给出正值,右侧为负值,与其他浏览器完全相反(包括IE11及以下).
我制作了一些GIF视频来展示这个问题,并链接了文件大小.
为什么会这样,是否有处理浏览器兼容性问题的解决方案?有没有办法对功能进行检测?这种行为是一个错误,还是在某处记录?
如果用户代理滚动为滚轮事件的默认动作,那么三角形的符号应该由右手坐标系给出,其中正X,Y和Z轴指向最右边,最底部分别是文档的边缘和最远深度(远离用户).
deltaZ
倒置或甚至支持开始,我缺乏这样的输入设备.我在这里向微软报告了这个漏洞.它被分配给某人,所以希望它将被修复.
{ "_id" : ObjectId("51ee3966e4b056fe8f074f48"), "userid" : "66", "clientid" : "88", "deviceid" : "22", "timestamp" : "1374214822000"}
{ "_id" : ObjectId("51ee507ae4b056fe8f074f4a"), "userid" : "66", "clientid" : "88", "deviceid" : "22", "timestamp" : "1374214822000"}
{ "_id" : ObjectId("51ee51fee4b056fe8f074f4b"), "userid" : "66", "clientid" : "88", "deviceid" : "22", "timestamp" : "1374214822000"}
Run Code Online (Sandbox Code Playgroud)
如何删除mongodb中的多个ID?
这可能是一个简单的问题,但我找不到答案.我怎么知道我的收藏是否没有数据?
我这样做$datas = Mage::getModel('zzz/zzz')->getCollection()
,如果我做了$datas->getData()
它返回一个空数组,但我怎么知道我的收藏有没有做的foreach或没有的getData数据?
如果我在Qt Designer中将horizontalHeaderVisible或verticalHeaderVisible属性设置为false,则可以正常工作.但是如何在代码中启用/禁用标头?我一直在尝试这样的事情:
self.ui.tblContents.horizontalHeaderVisible = False
Run Code Online (Sandbox Code Playgroud) 我在这里有困惑.
如果我不能将类声明为静态,那么枚举是如何工作的?它看起来像一个静态类,因为它本身可以实例化,并且可以在任何地方调用.看起来我几乎可以像其他静态字段一样使用枚举.
使用枚举是否安全?
我在这里做了这个例子:http://jsbin.com/pokahec/edit?html,output
// creates a global "addWheelListener" method
// example: addWheelListener( elem, function( e ) { console.log( e.deltaY ); e.preventDefault(); } );
(function(window,document) {
var prefix = "", _addEventListener, onwheel, support;
// detect event model
if ( window.addEventListener ) {
_addEventListener = "addEventListener";
} else {
_addEventListener = "attachEvent";
prefix = "on";
}
// detect available wheel event
support = "onwheel" in document.createElement("div") ? "wheel" : // Modern browsers support "wheel"
document.onmousewheel !== undefined ? "mousewheel" : // …
Run Code Online (Sandbox Code Playgroud) 我有一个应用程序在多个服务器上运行应用一些ACL.
问题是当多个服务器应用于相同的文件夹结构(即三个级别)时,通常只有一级和三级应用了ACL,但是没有例外.
我用并行任务创建了一个测试(模拟不同的服务器):
[TestMethod]
public void ApplyACL()
{
var baseDir = Path.Combine(Path.GetTempPath(), "ACL-PROBLEM");
if (Directory.Exists(baseDir))
{
Directory.Delete(baseDir, true);
}
var paths = new[]
{
Path.Combine(baseDir, "LEVEL-1"),
Path.Combine(baseDir, "LEVEL-1", "LEVEL-2"),
Path.Combine(baseDir, "LEVEL-1", "LEVEL-2", "LEVEL-3")
};
//create folders and files, so the ACL takes some time to apply
foreach (var dir in paths)
{
Directory.CreateDirectory(dir);
for (int i = 0; i < 1000; i++)
{
var id = string.Format("{0:000}", i);
File.WriteAllText(Path.Combine(dir, id + ".txt"), id);
}
}
var sids = new[]
{ …
Run Code Online (Sandbox Code Playgroud) c# ×2
javascript ×2
mousewheel ×2
acl ×1
asp.net-mvc ×1
automapper ×1
enums ×1
firefox ×1
header ×1
iframe ×1
java ×1
list ×1
listbuffer ×1
magento ×1
modelbinders ×1
mongodb ×1
mouse ×1
pyqt ×1
python ×1
qtablewidget ×1
scala ×1