小编eu-*_*-ne的帖子

如何在ASP.NET MVC视图中使用扩展方法?

如何在ASP.Net MVC视图中访问扩展方法?在C#我做

using MyProject.Extensions;
Run Code Online (Sandbox Code Playgroud)

我记得看到一个等同于放入视图的XML,但我再也找不到了.

asp.net-mvc extension-methods views

35
推荐指数
2
解决办法
1万
查看次数

如何在asp.net中索引.doc和.pdf文件

如何在asp.net(C#)中索引存储在数据库(使用MS SQL Server)中的.doc和.pdf文件?

c# sql-server pdf asp.net ms-word

6
推荐指数
1
解决办法
2437
查看次数

ASP.NET MVC"Donut caching"和TempData

是否有任何解决方案来访问HttpResponseBase.WriteSubstitution()方法中的TempData属性

这不起作用:

<%= Response.WriteSubstitution(x => Html.Encode(TempData["message"].ToString())) %>
Run Code Online (Sandbox Code Playgroud)

但这有效:

<%= Response.WriteSubstitution(x => DateTime.Now.ToString()) %>
Run Code Online (Sandbox Code Playgroud)

问题出在一次缓存页面的请求处理中.根据http://msdn.microsoft.com/en-us/library/system.web.httpresponse.writesubstitution.aspx:

在对页面的第一个请求中,WriteSubstitution调用HttpResponseSubstitutionCallback委托来生成输出.然后,它为响应添加一个替换缓冲区,该代码保留委托以便在将来的请求上调用.最后,它将客户端可缓存性从公共服务器降级到仅服务器,确保将来对页面的请求通过不在客户端上缓存来重新调用委托.

换句话说,委托无权访问Session属性(SessionStateTempDataProvider在会话中存储TempData),因为没有"正常"的请求生命周期.据我所知,它是在HttpApplication.ResolveRequestCache/HttpApplication.PostResolveRequestCache事件处理的,但当前状态是在HttpApplication.AcquireRequestState事件中获取的(http://msdn.microsoft.com/en-us/library/ms178473.aspx)

也许我需要某种"高级自定义TempDataProvider":)任何想法?

asp.net asp.net-mvc

5
推荐指数
1
解决办法
3654
查看次数

ASP.NET MVC,MonoDevelop和Windows

根据Miguel de Icaza的帖子(这里这里)和Lluis Sanchez Gual的帖子(这里这里)MonoDevelop for Windows即将推出.我个人非常喜欢在Windows下使用MonoDevelop开发ASP.NET MVC的开源项目.是的,最好在Linux下的MonoDevelop中工作,但由于很多原因,我不能简单地停止使用Windows(IIS7是其中一个原因 - 今天它比ASP.NET更好用于ASP.NET).

问题N1:有人会在Windows上使用MonoDevelop尝试在ASP.NET MVC中开发一些东西吗?

问题N2:与Visual Web Developer Express 2008相比,在Windows上使用MonoDevelop是否有任何优势?

问题N3: IDE(MonoDevelop和VWD Express)都是免费的,但对于开源开发来说实际上更好/更好,为什么(这对我来说非常有趣)?

编辑:

是的,我使用的是完整的Visual Studio 2008 Pro,它是一个很棒的IDE.但它不能用于开源开发 - 我认为这是无稽之谈.我实际上是为此付出了代价 - 但我不能指望它来自我的图书馆用户.所以我只能选择Mono Develop或VWD Express?(见问题N3)

谢谢

asp.net asp.net-mvc open-source vwdexpress monodevelop

5
推荐指数
1
解决办法
2314
查看次数

使用ASP.Net MVC实现.Net OpenId

我从DotNetOpenId下载的示例与创建新应用程序时获得的MVC 1.0应用程序的文件不同.

我是MVC和openId的新手,我遇到的所有例子都很老.

任何人都可以向我指出使用DotNetOpenId实现Openid与ASP.net MVC的例子.

openid asp.net-mvc dotnetopenauth

5
推荐指数
1
解决办法
1821
查看次数

ASP.NET MVC ModelBinder不使用GET请求和/或jQuery AJAX?

当通过GET而不是POST调用时,我似乎遇到了让MVC填写我的自定义模型参数的问题.

我有一个JavaScript代码段,可以调用这样的动作:

$.getJSON('<%= Url.Action("DoSearch") %>' + location.search,
    function(data) {
        if (data.Result == "OK") {
            location.href = location.href;
        }
    });
Run Code Online (Sandbox Code Playgroud)

它的作用基本上是调用一个单独的动作,传递与调用页面相同的查询字符串.然后,如果结果为"OK",则刷新当前页面.

该操作的定义如下:

    public ActionResult DoSearch(SearchParameters searchParameters)
Run Code Online (Sandbox Code Playgroud)

该模型是:

public class SearchParameters
{
    public string Query;
    ...
}
Run Code Online (Sandbox Code Playgroud)

调用URL(用firebug验证)就像/DoSearch?Query=some+query.(也尝试/DoSearch?searchParameters.Query=some+query没有成功)

无论我尝试什么,我的参数总是显示为空(不为空,只是所有参数都被初始化为默认值)

如果我定义这样的动作:

    public ActionResult DoSearch(string Query, ...)
Run Code Online (Sandbox Code Playgroud)

然后我的参数被正确填充.然而,不是模型.

我假设:

a)填充对象模型对GET请求不起作用.

b)我做错了什么

有任何想法吗?谢谢.

ajax asp.net-mvc jquery modelbinder

1
推荐指数
1
解决办法
1051
查看次数