这是我的测试代码:
class PassingInActionStatement
{
static void Main(string[] args)
{
var dsufac = new DoSomethingUsefulForAChange();
dsufac.Do(WriteToConsole);
dsufac.Do2(s => WriteToConsoleWithSomethingExtra("Test"));
dsufac.Do(WriteToConsoleWithSomethingExtra("Test")); // Does not compile
}
internal static void WriteToConsole()
{
Console.WriteLine("Done");
}
internal static void WriteToConsoleWithSomethingExtra(String input)
{
Console.WriteLine(input);
}
}
internal class DoSomethingUsefulForAChange
{
internal void Do(Action action)
{
action();
}
internal void Do2(Action<String> action)
{
action("");
}
}
Run Code Online (Sandbox Code Playgroud)
前2个电话有效,但我想知道为什么第3个电话没有.我不喜欢Do2中的代码,因为我action("")
在那里有类型类型以使其工作似乎很奇怪.
有人可以解释一下我不明白的两件事吗?
我在ASP.NET中成功实现了基于角色的授权.当一个人没有所需的角色时,他会看到401.2未经授权的错误页面.
我现在想要完成的是在我的应用程序中有一个自定义的401页面,并通过web.config中的设置将其重定向到那里.我试过这个:
<customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
<error statusCode="401" redirect="NoAccess.htm" />
</customErrors>
Run Code Online (Sandbox Code Playgroud)
但这并没有被抓住.我是否必须在IIS中覆盖它?我希望不会因为这会使事情更难部署.
在Visual Studio 2008中,有一项功能可以自动添加工具箱窗格,并添加我的Web应用程序项目或当前解决方案中的类库中的自定义控件.
在另一台电脑上,这不起作用,我想知道我必须启用哪个设置,可能在工具|中 选项......,为此.
我不是在寻找以下答案:右键单击工具箱,然后选择添加项目..我知道如何执行此操作但我正在寻找自动检测并在Visual Studio 2008中添加功能并在另一台PC上启用它.
一个后续问题:汇总字典问题.
我使用了Aggregate Linq功能但也许有更好,更干净的方法来做到这一点?
我可以从HtmlHelper获取当前路线吗?或者你的建议是什么?我想创建一个语言切换器,以便当我在页面/路由上并单击另一种语言时,请求相同的操作,但路由中使用另一种语言.
就像是
EN/Home/Index和FR/Home/Index
是否可以在浏览器中为onbeforeunload事件创建自定义确认框?我试过但后来我得到了2个确认框(一个来自我,这只不过是返回确认...然后是浏览器中的标准框).
目前我的代码如下:
var inputChanged = false;
$(window).load(function() {
window.onbeforeunload = navigateAway;
$(':input').bind('change', function() { inputChanged = true; });
});
function navigateAway(){
if(inputChanged){
return 'Are you sure you want to navigate away?';
}
}
Run Code Online (Sandbox Code Playgroud)
我正在使用jQuery.
有没有关于如何安装和使用Mac OS X Snow Leopard的好教程?您还使用哪些工具?TextMate?或者是其他东西?
在Windows平台上进行多年的ASP.NET开发后,我正在尝试使用RoR的第一步,但我很想知道其他事情以及成为更好的开发人员.
我有一个列表,如:
List<String> test = new List<String> {"Luke", "Leia"};
Run Code Online (Sandbox Code Playgroud)
我想用这样的东西:
test.Select(s => String.Format("Hello {0}", s));
Run Code Online (Sandbox Code Playgroud)
但它不会调整列表中的名称.有没有办法使用lambda表达式来改变这些?或者是因为字符串是不可变的,这不起作用?
我只是NHibernate和WCF的简单初学者.我想在我的存储库所在的类库中使用NHibernate作为我的ORM.我还需要使用WCF来公开我的业务逻辑,并将我的存储库放在公司的其他部分之后.
是否有一些关于如何完成此任务的良好文档?是否有提前照顾的陷阱?任何推荐的阅读/书籍?
我正在寻找有关如何在WCF中最好地集成NHibernate的信息.我是否使用HttpModule,必须在我的服务层的global.asax中连接一些东西(使用IIS托管,所以我去了一个Web应用程序项目开始).我是按照要求或其他方式参加会议吗?
如何在WPF/Silverlight中将TextBlock添加到Ellipse?
可能重复:
你如何在JavaScript中找到调用者函数?
如何在javascript函数中找到调用(调用堆栈中的前者)函数?
我想确定在onbeforeunload事件中前者被调用的函数是否是__doPostback.
我想把它放在我的标记中:
<script type="text/javascript" src="<%$ AppSettings:proxyScriptUrl %>"></script>
Run Code Online (Sandbox Code Playgroud)
但由于某种原因,这是不被接受的.我在这做错了什么?
要求是我不使用辅助方法,而是在标记中使用expressionbuilder.
我想了解更多关于温莎城堡的信息,但似乎有点压倒我.我在这里找到了一个代码示例:http://ayende.com/Blog/archive/2007/03/07/Building-the-Policy-Injection-in-40-Minutes-with-Windsor.aspx.它确实很有趣,但它似乎使用了很多额外的代码.我认为政策注入的力量只是我可以制作一些配置文件并注入它并拥有预处理,发布和拦截处理程序?
asp.net ×2
c# ×2
javascript ×2
.net ×1
appsettings ×1
architecture ×1
asp.net-mvc ×1
c#-3.0 ×1
callstack ×1
confirm ×1
ellipse ×1
function ×1
lambda ×1
macos ×1
nhibernate ×1
orm ×1
silverlight ×1
textblock ×1
toolbox ×1
wcf ×1
wpf ×1