标签: asp.net-mvc-2

BuildUrlFromExpression

我目前正在看这个:

ASP.NET MVC中的Radchart

但不知道如何处理这段代码:

string url = helper.BuildUrlFromExpression<T>(action);
Run Code Online (Sandbox Code Playgroud)

这是我可以使用的MVC辅助方法吗?任何反馈都将非常感激.谢谢!

基督教

asp.net-mvc asp.net-mvc-3 asp.net-mvc-2

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

ASP.NET MVC - 将htmlAttributes作为参数传递

我想将htmlAttributes作为参数传递给我的HtmlHelper,类似于在Html.ActionLink中创建的("linktext","Home",null,new {width ="100px"})如何传递这个新的{width ="100px"}我的方法

    public static string SelectCategoryAdminWithAllItem(this HtmlHelper htmlHelper, string name, **???**)
    { }
Run Code Online (Sandbox Code Playgroud)

以及如何解析它?

谢谢

asp.net-mvc html-helper asp.net-mvc-2

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

ASP.NET MVC2自定义dateTime格式助手

我有一个关于如何创建自定义View Helpers的问题.我想在我的索引视图中更改我的默认日期时间格式.我想编写自己的Helper,因为我觉得它很容易就像PHP一样.我做了:

  1. 创建类:

    public static class CustomViewHelpers
    {
        public static MvcHtmlString returnDateString(string format, DateTime date)
        {
            return MvcHtmlString.Create(date.ToString(format));
        }
    }
    
    Run Code Online (Sandbox Code Playgroud)
  2. 我把它添加到web.config中,

  3. 我这样用过:

     <p><em>
        Birth date</em>
        <%: CustomViewHelpers.returnDateString("D", Model.Birth_Date); %></p>
    
    Run Code Online (Sandbox Code Playgroud)

但我总是得到错误:

编译错误

描述:编译服务此请求所需的资源时发生错误.请查看以下特定错误详细信息并相应地修改源代码.

编译器错误消息:CS1026 :)预期

但我认为这是一个错误的错误,因为当我删除我的线它正常工作,我看到有这些")"标记.你能解释一下为什么这种助手不起作用吗?也许你知道如何在ASP.NET MVC2中编写自己的帮助程序的好教程?

c# html-helper asp.net-mvc-2

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

ASP.Net MVC SelectList不是'选择'正确的项目

我被要求查看一些ASP.Net MVC代码中的错误,并且(对我来说)SelectList有一个非常奇怪的问题.

来自控制器的代码生成项(返回SelectList的方法,总共有5个).然后将每个SelectList保存到ViewData集合中.

List<SelectListItem> items = new List<SelectListItem>();
string yesText = "Yes";
string noText = "No";
if (ci.LCID.Equals((int)LanguageCodes.FRANCE))
{
    yesText = "Oui";
    noText = "Non";
}

SelectListItem yesItem = new SelectListItem();
yesItem.Text = yesText;
yesItem.Value = ((int)MarketingBy.Yes).ToString();
yesItem.Selected = selectedValue != null && selectedValue.Equals(int.Parse(yesItem.Value));

SelectListItem noItem = new SelectListItem();
noItem.Text = noText;
noItem.Value = ((int)MarketingBy.No).ToString();
noItem.Selected = selectedValue != null && selectedValue.Equals(int.Parse(noItem.Value));

items.Add(yesItem);
items.Add(noItem);

return new SelectList(items, "Value", "Text", yesItem.Selected ? yesItem.Value : noItem.Value);
Run Code Online (Sandbox Code Playgroud)

在创建点快速"快速观察"表明一切正常: 选择列表生成http://i52.tinypic.com/x3hd3r.png

在渲染视图时,值仍然可以正常显示.但是,加载视图时,始终会选择列表中的第一个项目.生成的HTML是:

<tr> …
Run Code Online (Sandbox Code Playgroud)

html selectlist asp.net-mvc-2

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

jQuery没有点击标签标签

在标签标签上附加点击事件是不可能的,但我不明白为什么.

jQuery lib位于:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js" 
        type="text/javascript"></script>

<script language="javascript" type="text/javascript">

    $(document).ready(function () {
        $('label').('click', function () {
            alert("this is the click on label!");
            return false;
        });
    });
</script>
Run Code Online (Sandbox Code Playgroud)

在我的View MVC 2.0页面上,我有一个国家列表,要绑定一组复选框:

<label><input id='country_<%=country.CountryID%>' 
       type="checkbox" name="country" value="on"/> <%=country.CountryName %>
</label><br />
Run Code Online (Sandbox Code Playgroud)

当我点击labelIE9,Chrome 12或Firefox 5 上没有任何反应时.

jquery label click asp.net-mvc-2

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

请解释为什么这个c#扩展方法有效

我买了pro asp.net mvc2框架书.我在第122页遇到了困难.我无法理解为什么会这样.

我已经通过电子邮件发送了作者,但还没有收到任何回复.这是代码,有人可以向我解释为什么它的工作原理.

    public static class PagingHelpers
{
    public static MvcHtmlString PageLinks(this HtmlHelper html, PagingInfo pagingInfo, Func<int, string> pageUrl)
    {
        StringBuilder result = new StringBuilder();

        for (int i = 1; i <= pagingInfo.TotalPages; i++)
        {
            TagBuilder tag = new TagBuilder("a");
            tag.MergeAttribute("href", pageUrl(i));

            tag.InnerHtml = i.ToString();

            if (i == pagingInfo.CurrentPage)
                tag.AddCssClass("selected");

            result.AppendLine(tag.ToString());
        }

        return MvcHtmlString.Create(result.ToString());
    }
}
Run Code Online (Sandbox Code Playgroud)

这个PageLinks辅助方法需要3个参数,但是在本书后面,当作者调用它时,

<%: Html.PageLinks(
      new PagingInfo { CurrentPage = 2, TotalItems = 28, ItemsPerPage = 10 },
      i => Url.Action("List", new{ page = i}) …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc asp.net-mvc-2

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

asp.net mvc图像路径和虚拟目录

我知道这必须是重复的,但我一直在涉及这方面的大量信息,我无法让它工作.

我正在尝试让一个站点在客户端的服务器上运行,并且他们将站点安装在虚拟目录中.我本地没有这个设置,所以我在这里盲目飞行.

我正在尝试建立一个图像的路径.(这是Facebook OpenGraph元数据).

我需要图像的路径是一个完全合格的绝对URL.我尝试过很多东西,但似乎没什么用.下面的代码输出一个相对url,但这不起作用.

<% var urlHelper = VirtualPathUtility.ToAbsolute("~/static/images/image.jpg");%>
<meta property="og:image" content="<%=urlHelper%>" />
Run Code Online (Sandbox Code Playgroud)

输出:

<meta property="og:image" content="/static/images/image.jpg" /> 
Run Code Online (Sandbox Code Playgroud)

我也尝试过:

<% var serverHost = HttpContext.Current.Request.Url; %>
<meta property="og:image" 
          content="<%=serverHost + "/static/images/image.jpg"%>" />
Run Code Online (Sandbox Code Playgroud)

但那产生了:

<meta property="og:image" 
   content="http://localhost:51863/ViewFile.aspx/static/images/image.jpg" />
Run Code Online (Sandbox Code Playgroud)

我正在寻找http://example.com/virtualdirectory/static/images/image.jpg

任何帮助都感激不尽.我真的不想对网址进行硬编码.

谢谢,斯科特

编辑

我忽略了提到我的第一次尝试是Url.Content("〜/ .... jpg)但是它输出了一个相对的url,而不是一个绝对的url.

c# asp.net asp.net-mvc-2

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

为什么我的控制器中找不到操作?

我有这个代码:

return RedirectToAction("Save", "RequestFinishedDocument",
                                new {requestId = requestFinished.Request_ID, requestFinishedId = requestFinished.ID});
Run Code Online (Sandbox Code Playgroud)

在我的控制器中,我有:

public class RequestFinishedDocumentController : Controller
{
    [HttpPost]
    public JsonResult Save(int requestId, int requestFinishedId)
    {
        //todo
    }
}
Run Code Online (Sandbox Code Playgroud)

但在RedirectToAction呼叫我得到的异常消息: 一项公开的操作方法"保存"并没有对控制器"SuiP.Controllers.RequestFinishedDocumentController"找到.

怎么了?

谢谢

asp.net-mvc asp.net-mvc-3 asp.net-mvc-2

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

我可以将viewbag值传递给mvc2中的jQuery

我需要使用viewbag将值传递给视图中的jQuery.我想要实现的是传递null或一些值,然后jQuery应隐藏或显示div,具体取决于传递的值,例如下面的内容:

viewbag.testNumber = null;
 $('#showdiv').hide();
  $('viewbag.testNumber').value == someinteger{

    $("#showdiv").show();
    else
    $("#showdiv").hide();
});
   <div id="showdiv"> Some Calculation </div>
Run Code Online (Sandbox Code Playgroud)

此外,如果值为null,我想在视图中禁用viewbag,因为它给出了null错误

asp.net-mvc jquery asp.net-mvc-2

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

主机名是IIS网站的站点时的Windows身份验证问题

我试图在MVC 2.0应用程序上设置Windows身份验证.一切都在配置中,现在我基本上只想允许经过身份验证的用户并拒绝匿名用户:

<authentication mode="Windows" />

<authorization>
  <deny users="?"/>
  <allow users="*"/>
</authorization>
Run Code Online (Sandbox Code Playgroud)

在IIS网站上,我已禁用所有其他身份验证类型,但Windows身份验证.

现在问题是:当我将其设置为IIS中"默认网站"下的应用程序时,一切都按预期工作; 系统会提示用户输入凭据,并根据Web服务器上的帐户进行身份验证.

但是当我在同一个IIS根目录上创建一个新网站时,身份验证不再有效.应用程序和网站都在同一个应用程序池中的同一个框上运行,并且引用磁盘上的相同物理位置.

我真的没有想法,非常感谢任何建议.

windows-authentication asp.net-mvc-2

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