小编mis*_*hap的帖子

将数据从控制器传递到视图

我有一个愚蠢的问题:在我的控制器中我设置:

ViewBag.totalCount = 20
Run Code Online (Sandbox Code Playgroud)

在我要调用的视图中:

@Html.Pager(8, 1, @ViewBag.totalCount);
Run Code Online (Sandbox Code Playgroud)

但我认为ViewBag无法识别,因为整个方法调用在VS中有下划线.它必须是简单的东西.我怎么能这样呢?谢谢!

asp.net-mvc viewbag asp.net-mvc-3

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

什么是"基地"在这个属性做什么?

我在我将要开展的项目中偶然发现了这个:

public int? OrgId
{
    get { return base["OrgId"] as int?; }
    set { base["OrgId"] = value; }
}
Run Code Online (Sandbox Code Playgroud)

点击OrgId,Resharper带我去看这个签名的方法:

public override object this[string propertyName] { get; set; }
Run Code Online (Sandbox Code Playgroud)

base [""]做什么?什么意思是覆盖的这个[]部分?在Google上找不到任何有意义的内容.

.net c#

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

Asp.net设计模式

我是一名初级开发人员,他已经掌握了基础知识并且也有一些经验,但是当谈到从头开始构建项目时,我在编写良好的可维护代码方面毫无用处.我知道有很多设计模式用于此目的,而且我也知道asp.net MVC3.现在,我是否需要阅读asp.net设计模式书籍才能成为asp.net的优秀架构师,还是应该专注于MVC,因为它是新的更好的设计模式?我有这样的印象,设计模式和MVC是分开的,因为MVC是它自己的"强制"设计模式.我需要为自己澄清这一点并欣赏所有答案!谢谢.

model-view-controller asp.net-mvc design-patterns coding-style asp.net-mvc-3

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

选择SelectListItem进行建模

我有一个List传递给我在ViewBag中的视图:

public ActionResult ContactUs()
    {
        List<SelectListItem> reasons = new List<SelectListItem>();
        reasons.Add(new SelectListItem
        {
            Selected = true,
            Text = "Billing/Payment question",
            Value = "Billing/Payment question"
        });
        reasons.Add(new SelectListItem
        {
            Text = "Complaint",
            Value = "Complaint"
        });

        ViewBag.reasons = reasons;
        return View();
    }

[HttpPost]
public ActionResult ContactUs(ContactUs form)
{
    //some code
    return View("ContactUs");
}
Run Code Online (Sandbox Code Playgroud)

模型:

[Required]
public String Reason { get; set; }
Run Code Online (Sandbox Code Playgroud)

教职员:

@model #####.ViewModels.ContactUs
@using (Html.BeginForm("ContactUs","Home", FormMethod.Post))
{
   @Html.DropDownListFor(Model => Model.Reason,  (IEnumerable<SelectListItem>) ViewBag.reasons);
}
Run Code Online (Sandbox Code Playgroud)

我需要创建一个下拉列表,也许DropDownList("reason")(应该是更好的编写方式)形成ViewBag.reasons并将选定的值传递给我的Model,作为属性String Reason.只是混淆了DropDownList/DropDownListFor的用法.谢谢!

asp.net-mvc asp.net-mvc-3 drop-down-menu

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

C#通过参考混淆传递参数

看完一些文章后仍然感到困惑.为什么更改StringBuilder的值会改变而DateTime的值不会改变?根据我的理解,两者都是引用类型:

class Program
{
    static void Main(string[] args)
    {
        DateTime myDt = DateTime.MinValue;
        Change(myDt);
        Console.WriteLine(myDt);

        StringBuilder y = new StringBuilder();
        y.Append("hello");
        Foo(y);
        Console.WriteLine(y);

        String test = "hello";
        Foo(test);

    }

    public static void Change(DateTime dt)
    {
       dt.AddDays(24); 
       //or dt=dt.AddDays(24);
    }

    static void Foo(StringBuilder x)
    {
        x.Append(" world");
    }

    static void Foo(String x)
    {
        x = x + " world";
    }
}
Run Code Online (Sandbox Code Playgroud)

c# oop

0
推荐指数
2
解决办法
152
查看次数

Regex.Match()与子字符串不匹配

这很简单,但我无法弄明白.我想找到这个正则表达式的子字符串.它将是马赫"M4N 3M5",但不符合以下内容:

const string text = "asdf M4N 3M5 adsf";
Regex regex = new Regex(@"^[ABCEGHJKLMNPRSTVXY]{1}\d{1}[A-Z]{1} *\d{1}[A-Z]{1}\d{1}$", RegexOptions.None);
Match match = regex.Match(text);
string value = match.Value; 
Run Code Online (Sandbox Code Playgroud)

c# regex

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