我有一个for循环的形式:
for (int i = from; i < to; i++) {
// do some code (I don't know exactly what, it is subject to change)
}
Run Code Online (Sandbox Code Playgroud)
我想将它转换为while循环(主要是因为我想要使用i循环内部的值来进行前后循环,而我的同事认为在for循环中执行此操作很容易出现问题.我倾向于同意他).所以我写了这样的东西:
int i = from;
while (i < to) {
try {
// do some code (I don't know exactly what, it is subject to change)
} finally {
i++;
}
}
Run Code Online (Sandbox Code Playgroud)
这引起了一些响亮的评论.我的理由是你不知道循环中的代码是什么 - 它可能(并且确实)有多个continue命令.
作为回应他写道:
int i = from - 1;
while (++i < to) {
// do some …Run Code Online (Sandbox Code Playgroud) 在Eclipse中,我看到ArrayList对象有一个modCount字段.它的目的是什么?(修改次数?)
这是一个id问题还是我缺少的东西?我试图让它删除评论...在这个'delete.php'页面上,$ prof是发送删除请求的用户,在我试图删除的页面上,$ auth是发送者评论.
<?php
require_once($_SERVER['DOCUMENT_ROOT'] . '/includes/system/init.php');
enforce_auth();
$prof = new User($_GET['id']);
$query = "UPDATE `ProfileComments` SET `status` = 'dead' WHERE `id` = '".$prof->id."' LIMIT 1";
$request = mysql_query($query,$connection);
?>
Run Code Online (Sandbox Code Playgroud)
我应该替换查询中的其他变量而不是$prof->id?
我在项目根目录中有一个makefile.如果我在子目录中编辑文件,如何从EMACS 调用make?Mx编译make将无法正常工作,因为它在当前目录中查找makefile.但是我在项目根目录中有makefile.
有什么想法吗?
编辑
正如所建议的那样,make -f fullpath_to_makefile就可以了.但是我在makefile中包含了一些包含" tests/module.mk "的包含失败的内容.它正在子目录中查找" tests "目录.这可以通过在makefile中指定完全限定的路径来解决.但我不认为这是一个很好的解决方案.有更好的方法吗?
我想接受/ somefolder/style.css的请求,并使用/ somefolder/program.php处理它们
所以,我将以下内容放在我的.htaccess文件中:
rewriteengine on rewriterule ^style.css$ program.php?css=1 [R=302,L]
结果是,服务器尝试重定向到:而不是重定向到/somefolder/program.php:
/var/www/html/somefolder/program.php?css=1
如何摆脱重定向中的/ var/www/html /?我认为,因为我刚刚在.htaccess中输入了program.php,它会默认为同一个文件夹.
由于这是我将在许多地方使用的通用脚本,我想避免使用rewritebase来指定我所在的文件夹 - .htaccess必须在任何文件夹中工作而不进行修改.
我正在使用Eclipse 3.4.2调试一些Java代码.我已禁用所有断点,但调试器仍在特定行停止.这一点是在null pointer exception触发之前的几行.奇怪的是,当我运行相同的代码/运行配置但不在调试器中时,不会发生空指针异常.
此外,如果我从方法的开头逐步执行此代码导致null pointer exception使用完全相同的输入,则没有问题.它只会在我删除所有断点时发生,但Eclipse决定在那里停止.
为什么会发生这种情况?
我有C#程序,我有DataSet,我想绑定到水晶报告.
怎么做 ?
与automapper有一些实际问题.我想我找到了解决方案但不确定如何实现它.
基本上我使用ResolveUsing和ConstructedBy的自定义映射将params传递给构造函数,我知道大多数人在global.asax中设置了一次而忘记了它.
但问题是我的方法(在wcf上)将不同的参数传递给ResolveUsing的构造函数......
在我使用静态方法的Mapper.CreateMap和Mapper.Map之前,看来当不同的请求通过方法(多用户)进入wcf服务时,它们彼此冲突.
看完之后,我可以使用CreateMap和Map的实例版本,这样每个请愿书都可以获得自己的地图,并可以传递自己的参数.
但我似乎无法找到如何做到这一点.有人可以解释一下吗?我真的被困了......
在一次又一次之前,我会得到重复的键错误,并且我在构造函数上添加了一个日志跟踪,看起来1请求覆盖了另一个 - 因此是静态版本的Mapper.
好吧,我希望我是对的,但我找不到别的......
编辑 - 我有什么例子
基本上所有映射都应该正常工作,因为我在大多数情况下使用MapFrom.
然后我创建一个我的Resolver实例,我在URL中传递.在我传递之前我检查了网址并且它是正确的.但是一旦它返回它就会返回错误的URL.
我需要在URL中传递的原因是它有变量,所以我需要替换变量...基本上有2个网址取决于办公室,我到处都有日志,我可以看到我传递的内容但是一次我把它传递进去 - 它不是我传入的那个,如果这是有道理的,这很奇怪!
它是一个WCF服务和一个客户端调用该方法两次传递到2个不同的办公室,因此2个不同的URL.但是它们总是返回相同的URL.就好像一个会话正在覆盖另一个会话......
我希望这是有道理的.
SalesPointResolver newSalesPointResolver = new SalesPointResolver(returnReservationUrl, reservationSite.ReservationUrl, startDate, endDate, officeCode);
Mapper.CreateMap<Models.Custom.House, DTO.House>()
.ForMember(dest => dest.Id, opt => opt.MapFrom(src => src.Id))
.ForMember(dest => dest.TaxIncluded,
opt => opt.MapFrom(src => src.Segments.FirstOrDefault().TaxIncluded))
.ForMember(dest => dest.TaxPercentage,
opt => opt.MapFrom(src => src.Segments.FirstOrDefault().TaxPercentage))
.ForMember(dest => dest.SalesPoints,
opt =>
opt.ResolveUsing(newSalesPointResolver))
;
Run Code Online (Sandbox Code Playgroud)
找出失败的地方 - 但不知道为什么
请参阅我的评论内联代码.在构造函数中,urlTemplate到达,我将其保存在私有var中,然后在重写的ResolveCore中,它是另外的东西:-)
我已经在那里放了一些log4net日志,所以我可以看到发生了什么.
[Log]
public class SalesPointResolver : ValueResolver<Models.Custom.House, IList<DTO.SalesPoint>>
{
private readonly ILog log = …Run Code Online (Sandbox Code Playgroud) 如何通过visual studio中的post-build事件窗口访问TeamCity环境变量?
可以进行哪种类型的评估以确保构建发生在构建服务器上而不是本地环境变量不存在的情况下?
谢谢
我有多个分布式竞争消费者,每个消费者都从同一个(事务性)队列中提取消息。我想将每个消费者实现为幂等接收器,因此即使重复到达,我也不会多次处理相同的消息(跨所有消费者)。我怎样才能与多个消费者一起实现这一目标?
我的第一个想法是在将每个消息放入队列之前以某种方式为它们生成一个连续的序列号,然后使用共享数据库表来协调消费者之间的工作。即消费者#1 处理msg#1,然后将一行写入数据库表,说“msg#1 已处理”(希望它在数据库中以确保持久性)。当消费者准备好处理消息时,它会查看队列中的下一个可用消息,查询共享数据库表并确定这是否是按顺序的下一个消息。如果是这样,它会将其从队列中拉出。如果没有,它会忽略它。
这样,我只需要存储处理的最后一条消息(因为所有消息都有一个连续的序列号),我不需要使用一个缓冲区来存储通过协商的“窗口”大小接收的所有消息的 ID,并且消息总是串行处理(这是我想要的这种情况)。
只是好奇是否有更好的方法?我担心每当我需要处理消息时查询数据库的成本。
如果答案是“这取决于框架”,那么我就想到了 MSMQ
c# ×2
java ×2
php ×2
.htaccess ×1
automapper ×1
coding-style ×1
collections ×1
data-binding ×1
dataset ×1
debugging ×1
eclipse ×1
emacs ×1
generics ×1
idempotent ×1
makefile ×1
mapping ×1
messaging ×1
mod-rewrite ×1
msbuild ×1
mysql ×1
pseudocode ×1
sql ×1
teamcity ×1
wcf ×1