我正在阅读Jon Skeet的书评,他正在审视Head First C#的众多不准确之处.
其中一个引起了我的注意:
[在错误部分下]声称结构总是存在于堆栈中.
在什么情况下结构不会存在于堆栈中?这与我认为的结构相反.
我使用ASP.NET MVC为暑期实习写了一个网站.进展顺利,但我发现痛苦的一件事就是部署.特别是因为我们经常部署,而且我一直在手工完成.
我正在寻找一种"标准".NET部署工具,可以与ASP.NET MVC项目一起使用,以自动化我们的部署过程.
我希望该工具可以做的一些事情(我现在手动完成):
鉴于这些软性要求,您建议我使用什么工具来解决这个问题?如果重要的话,我正在使用II7.
我是名为".Net"的神奇世界的初学者.
我有很多问题
我在等你的建议,意见等
我正在尝试学习ANTLR,同时将它用于当前项目.
我已经达到了可以在一大块代码上运行词法分析器并将其输出到CommonTokenStream的程度.这工作正常,我已经验证源文本被分解为适当的标记.
现在,我希望能够修改此流中某些标记的文本,并显示现在修改的源代码.
例如,我尝试过:
import org.antlr.runtime.*;
import java.util.*;
public class LexerTest
{
public static final int IDENTIFIER_TYPE = 4;
public static void main(String[] args)
{
String input = "public static void main(String[] args) { int myVar = 0; }";
CharStream cs = new ANTLRStringStream(input);
JavaLexer lexer = new JavaLexer(cs);
CommonTokenStream tokens = new CommonTokenStream();
tokens.setTokenSource(lexer);
int size = tokens.size();
for(int i = 0; i < size; i++)
{
Token token = (Token) tokens.get(i);
if(token.getType() == IDENTIFIER_TYPE)
{
token.setText("V");
}
} …Run Code Online (Sandbox Code Playgroud) 我一直试图在个人项目上使用Git近一个月了.
我对基本的命令集有很好的理解,虽然它的用户体验并不令人敬畏,但我仍然觉得自己比我过去使用的其他VCS更喜欢Git.
然而,我仍然认为我没有"获得"的一个概念是指数的真正目的.我有这种感觉,我没有利用它打算给予的一些好处.
有一个临时区域的目的是什么?来自SVN的土地,我已经习惯了将我的工作副本视为我的临时区域,而我的快照也是从我的提交中获取的.
所以,我的问题是:
这种额外的间接水平给你带来了什么?指数如何改善或改变您的正常工作流程?你能否提供任何让索引允许你做一些在没有它的情况下会遇到麻烦的事情?
我有一个应用程序,目前有以下设置:
设置看起来像这样:

该工作制片查询对于需要被添加到其经常需要被添加到工作队列每N分钟的工作列表新项目的数据库.这个作业生成器是我整个架构中唯一的节点,如果失败,将导致整个过程失败.我可以让数据库服务器,队列服务器或多个工作服务器发生故障,并且该过程将继续运行.
如何修改作业生成器以使其不是单点故障?我不知道如何分发它所做的工作,即每隔N分钟查询一次数据库,并将要处理的新作业排入队列.这是一项独特的任务.
我考虑过有多个生产者,每个生产者都会使用模数来处理1/P工作,其中P是生产者的数量.
就像是:
itemsToBeProcess = db.FetchItems()
for (item in itemsToBeProcessed) {
if item.id % producerNumber == 0) // Queue job
}
Run Code Online (Sandbox Code Playgroud)
这会将生产者的工作分成多个服务器.然而,这仍然不是理想的,因为如果单个生产者下降超过1/P值的工作将停止处理.所以,它仍然是部分失败.
任何人都可以提供任何关于我如何使这个工作生产者不是我的应用程序中的单点故障的指导?
我有一个简单的电子邮件地址注册表格如下:
<form action="" id="newsletterform" method="get">
<input type="text" name="email" class="required email" id="textnewsletter" />
<input type="submit" id="signup" />
</form>
Run Code Online (Sandbox Code Playgroud)
这是我希望能够做到的:
我看过太多的教程,在这个阶段我的眼睛非常疼,所以请不要指向任何网址(我很可能已经在那里).
如果有人可以提供一个关于做什么的准系统,那将非常感激.
在我在网上看到的大多数样本中,MVC控制器中的DI都是这样完成的
public ProductController(IProductRepository Rep)
{
this._rep = Rep;
}
Run Code Online (Sandbox Code Playgroud)
使用自定义ControllerFactory,它使用选择的DI框架并注入存储库.
为什么以上认为比上述更好
public ProuctController()
{
this._rep = ObjectFactory.GetInstance<IProductRepository>();
}
Run Code Online (Sandbox Code Playgroud)
这将得到相同的结果,但不需要自定义控制器工厂.
就测试而言,测试应用程序可以有一个单独的BootStrapper.这样,当控制器被测试时,他们可以获得假的存储库,当它们被用于实际时,它们将获得真实存储库.
有SO,Digg,Reddit等等......
是否应该独立于upvotes跟踪数据库中的downvotes?或者他们应该只是根据用户的行为减少/增加"投票"字段而没有持续存在?
如何处理选票?
.net ×3
c# ×3
asp.net-mvc ×2
ajax ×1
antlr ×1
antlr3 ×1
architecture ×1
database ×1
dvcs ×1
forms ×1
git ×1
iis-7 ×1
jquery ×1
stack ×1
struct ×1
structuremap ×1
validation ×1
vb.net ×1
voting ×1
workflow ×1