我有一个类型SearchBag,它包含一堆字符串和可空的整数,用于传递搜索值.我需要一种方法来检查搜索包是否包含任何值.
我目前正在尝试这样做:
public bool HasValues()
{
return GetType().GetProperties().Any(p => p.GetValue(this, null) != null);
}
Run Code Online (Sandbox Code Playgroud)
但是想知道是否有更好的方法.
我正在asp.net使用Visual Studio 2012 构建一个网站.我正在考虑添加一些dart代码.
我正在尝试检查这个东西是如何工作的:我下载了DartVS visual studio扩展,我从网上拿了一个准备好的dart代码.dartium当我从中运行它时,飞镖代码运行正常dart IDE.
我将代码复制并粘贴到Visual Studio(现在可以通过扩展来识别dart).当我从那里运行时 - 我可以看到GUI出现,但按钮似乎不起作用.我在dart代码的main函数中放了一个断点,但它似乎没有到达那里.
我究竟做错了什么?
谢谢!
在我的应用程序中,我想将多个字符串与替换值字典连接起来。
在readTemplateBlock获取与FileInfos并返回其作为字符串内容喂养。
该getReplacersBlock被供给(一次)与单个代用品字典。
本joinTemplateAndReplacersBlock应参加的每个项目readTemplateBlock与一个getReplacersBlock结果。
在我当前的设置中,它要求我为我发布的每个文件再次发布相同的替换字典。
// Build
var readTemplateBlock = new TransformBlock<FileInfo, string>(file => File.ReadAllText(file.FullName));
var getReplacersBlock = new WriteOnceBlock<IDictionary<string, string>>(null);
var joinTemplateAndReplacersBlock = new JoinBlock<string, IDictionary<string, string>>();
// Assemble
var propagateComplete = new DataflowLinkOptions {PropagateCompletion = true};
readTemplateBlock.LinkTo(joinTemplateAndReplacersBlock.Target1, propagateComplete);
getReplacersBlock.LinkTo(joinTemplateAndReplacersBlock.Target2, propagateComplete);
joinTemplateAndReplacersBlock.LinkTo(replaceTemplateBlock, propagateComplete);
// Post
foreach (var template in templateFilenames)
{
getFileBlock.Post(template);
}
getFileBlock.Complete();
getReplacersBlock.Post(replacers);
getReplacersBlock.Complete();
Run Code Online (Sandbox Code Playgroud)
有没有更好的块我错过了?也许我忽略了一个配置选项?
通过asp.net MVC框架,团队成员的博客(Rob Conery,Phil Haack等)真正帮助了我,让我感到舒服,开发正朝着正确的方向发展.Silverlight有类似的东西吗?
-Edit:我想提一下,我想自己找一下开发团队的成员.目前,对操作系统和浏览器的Silverlight支持太差,无法让我关心并投入时间.但我想保持一个间谍眼,这样我就可以在框架实现它的潜力时开始关怀.
是否可以从 ActionExecutingContext 对象获取原始端口?如果是这样,怎么办?
我通常很高兴Opera为实现CSS真正正确的一切而感到骄傲,似乎用以下行实现自定义游标似乎不起作用
cursor:url("../pics/merge.gif");
Run Code Online (Sandbox Code Playgroud)
该URL是正确的,因为它适用于常规背景图像属性.
适用于其他浏览器,但不适用于Opera.
有任何想法吗?
目前,我在我的机器上构建我的网站,将它们部署到测试机器以查看它们是否仍在那里工作,然后必须请求sysadmin将它们部署到qa/production服务器.
一次又一次,应该是我的骄傲时刻被一些被误解,遗忘或没有记录的部署程序所杀死.
目前,sysadmin将文件从开发服务器复制到他认为合适的任何服务器,并尝试遵循我的deploymentProcedures.txt.
我没有可以使用的机制使这种过渡尽可能无摩擦吗?我现在能想到的是
对于不是程序员的人来说,可以使部署变得更容易.
我有两个IEnumerable
IEnumerable<MyObject> allowedObjects = MyService.GetAllowedObjects();
IEnumerable<MyOBject> preferedObjects = MyService.GetPreferedObjects();
Run Code Online (Sandbox Code Playgroud)
我们可以安全地假设preferedObjects将始终是allowedObjects的子集.
我想创建一个IDictionary<MyObject, bool>.如果MyObject实例也在preferedObjects可枚举中,则其中键是来自allowedObjects和bool的MyObjects集合的对象为true.
我可以通过枚举它们并逐个添加它们来做到这一点,但我希望能够做到这样的事情:
IDictionary<MyObject, bool> selectedObjects = allowedObjects
.ToDictionary(o => new KeyValuePair<MyObject, bool>()
{ Key = q,
Value = preferedObjects.Any(q)
}
);
Run Code Online (Sandbox Code Playgroud)
UPDATE
Exchanged包含Any; 建议最多的解决方案是我首先尝试的,但由于某些原因不接受:
IDictionary<MyObject, bool> selectedObjects = allowedObjects
.ToDictionary<MyObject, bool>(o => o, preferedObjects.Any(o));
Run Code Online (Sandbox Code Playgroud)
Visual Studio说第一种方法不会返回bool.这是真的,但主要是因为bool不是正确的结果开始...
然后它说它不能推断第二个lambda的类型...
正如你所看到的我试图明确定义类型来帮助推断,但它没有解决问题..
建议?
免责声明:名称和代码都是为了保持焦点应该保持原样
在我的表单中,我有一组输入框,用户可以在其中输入值.在更改其中一个框时,表单会自动提交.
然而,现在的问题是用户停留在最后一个字段中,使用鼠标并按下OK按钮(另一个表单)而不先离开文本框.更改事件不会被触发,旧的,不正确的值将传递到下一页.
我想在几毫秒的非活动键盘后触发onchange事件.就像大多数自动完成插件一样.
我想我可以实现一个计时器,它在你输入输入字段的那一刻开始计时,并在每次处理击键时重置,然后当它达到零时触发onchange事件.
我不打算重新发明轮子,并且想知道这个功能是否在某个地方可用.
建议?
为了更多地了解C#中的跨平台开发,我试图查看Banshee项目.在它的当前形式中它不是编译.
所以,就我所知,我正在努力解决这个问题.
首先,几乎所有项目都破坏了参考.我认为这是最容易修复的部分.我认为错了......经常被破坏的引用是MonoPosixHelper.dll.我安装了Mono框架,并在它的bin文件夹中安装了MonoPosixHelper.dll文件.当我尝试引用它时,Visual Studio会抱怨它不是有效的程序集,也不是COM对象.后者我理解,因为它不是一个com ..
那么,这个库究竟做了什么,为什么它不是一个有效的程序集,我该如何解决呢?
.net ×4
c# ×4
asp.net-mvc ×2
asp.net ×1
banshee ×1
css ×1
dart ×1
deployment ×1
html ×1
javascript ×1
jquery ×1
lambda ×1
logging ×1
mono ×1
onchange ×1
opera ×1
posix ×1
reflection ×1
silverlight ×1
timer ×1
todictionary ×1
tpl-dataflow ×1