如何在ASP.NET MVC Web应用程序中实现后台处理队列?虽然大多数数据更改,更新等需要立即可见,但还有其他更新不需要实时处理,我希望将其移交给优先级较低的后台进程,后者将按照自己的进度处理它.
例如,采用StackOverflow的徽章奖励系统.通常,您可以采取特定的行动来奖励您徽章,但实际的"奖励"会在以后发生(通常在10分钟到几个小时之后).我认为这是通过一个单独的后台流程完成的,因为SO的工作在获得时立即授予徽章并不重要.
所以,我正在尝试创建某种队列系统,在这种系统中我可以填充任务(比如任何实现ITask接口的东西,它将有一个Process()方法),最终将由一个单独的进程执行.
我将如何实施这样的系统?想法/提示/示例代码?
谢谢!
我想让我的网站看起来很漂亮.我应该使用jQuery,还是更适合与ASP.net配对?
这应该很容易,但我似乎无法弄明白......如何检查实体上的孩子是否存在而没有实际获取或获取它?这个孩子现在很懒.
所以我有两个实体:
class A
{
public virtual int Id { get; set; }
public virtual B Child { get; set; }
}
class B
{
public virtual int Id { get; set; }
public virtual byte[] Blob { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我想在A的实例中检查是否存在B而没有实际获取大型博客...在直接sql中我可以检查看看child_id是否为null ...是否有某种方式我可以查询NHibernate代理B在A?
谢谢!
nhibernate proxy lazy-loading parent-child fluent-nhibernate
有人可以用尽可能简单的方式解释Model View Presenter模式是什么吗?与模型视图控制器有什么区别?哪个最好或用于哪个目的?
我想使用WCF启用双向通信,而无需在客户端上打开端口.
我正在开发像P2P应用程序(类似于teamviewer/logmein)的东西,你不需要打开端口进行通信.
如何通过HTTP/HTTPS完成双向通信而无需在客户端中打开端口?
注意:端口80可以在服务器中打开...没有问题.
谢谢
我已经阅读了类似的帖子,他们没有回答我的问题.
在C#中,我有一个我从WebClient.DownloadString获取的字符串.我已经尝试将client.Encoding设置为新的UTF8Encoding(false),但这没有任何区别 - 我仍然在结果字符串的开头以UTF-8的字节顺序标记结束.我需要删除它(用LINQ解析生成的XML),并希望在内存中这样做.
所以我有一个以\ x00EF\x00BB\x00BF开头的字符串,如果它存在,我想删除它.现在我正在使用
if (xml.StartsWith(ByteOrderMarkUtf8))
{
xml = xml.Remove(0, ByteOrderMarkUtf8.Length);
}
Run Code Online (Sandbox Code Playgroud)
但这感觉不对.我已尝试过各种带有流,GetBytes和编码的代码,但没有任何作用.任何人都可以提供"正确"算法从字符串中剥离BOM吗?
谢谢!
我们正在研究使用Microsoft DRM Server和Silverlight播放器播放受版权保护的视频的解决方案.视频将使用Silverlight播放器播放给网络上的注册用户.
我已经阅读了有关此主题的所有MSDN文档,并了解它应该如何工作.
但是,我找不到有关Microsoft Inidividuazation服务器的定价和安装的信息.因此,以下是我在这个领域有经验的人的问题:
设置涉及Windows DRM和Silverlight的快速"概念验证"解决方案的速度有多快.我们可以自己做或需要Microsoft的帮助吗?
这种解决方案在运营中的定价是多少?
谢谢!!
我试图过滤DateTimeField与日期的比较.我的意思是:
MyObject.objects.filter(datetime_attr=datetime.date(2009,8,22))
Run Code Online (Sandbox Code Playgroud)
我得到一个空的查询集列表作为答案因为(我认为)我不考虑时间,但我想"随时".
Django有这么简单的方法吗?
我有时间在日期时间设置,但事实并非如此00:00.
<tr>
<td>Blah!</td>
<td>X</td> <!-- TR containing X -->
<td>Woot!</td>
</tr>
<tr>
<td>Useful Data, contents unknown</td> <!-- Select this TR -->
</tr>
<tr>
<td>Useless data</td> <!-- Don't select this or any subsequent TR -->
</tr>
<tr>
<td>More crap I don't want</td>
</tr>
<tr>
<td>X</td> <!-- Another X -->
</tr>
<tr>
<td>Useful</td> <!-- Do select this one, since previous has X -->
</tr>
Run Code Online (Sandbox Code Playgroud)
什么XPath会<tr>在<tr>包含X之后立即返回?
我通过授权服务的"AuthorizationExecuteWithPrivileges"调用使用root/admin priveleges执行大量shell命令.问题是,经过一段时间(10-15秒,可能是100个shell命令),程序在调试器中停止响应此错误:
不能分叉:错误35
然后在应用程序运行时,我无法再启动应用程序.我研究了这个问题,显然这意味着没有更多的线程供系统使用.但是,我使用Activity Monitor检查了我的应用程序只使用了4-5个线程.
为了解决这个问题,我认为我需要做的是将shell命令分成一个单独的线程(远离主线程).我之前从未使用过线程,我不确定从哪里开始(我找不到全面的例子)
谢谢
c# ×2
asp.net ×1
asp.net-mvc ×1
datetime ×1
django ×1
drm ×1
duplex ×1
encoding ×1
filter ×1
firewall ×1
jquery ×1
lazy-loading ×1
macos ×1
mvp ×1
nhibernate ×1
parent-child ×1
process ×1
proxy ×1
python ×1
silverlight ×1
string ×1
wcf ×1
windows ×1
xhtml ×1
xpath ×1