小编Cos*_*smo的帖子

ASP.NET MVC 2 - ViewModel前缀

我希望在我的视图中使用RenderPartial两次,并关联不同的模型.问题是两个模型中都存在一些属性(昵称,密码).它们没有前缀,所以即使id或名称在输出中也是相同的.现在,如果我有昵称或密码的模型错误,则两个字段都会突出显示.

主要观点:

<div>
    <% Html.RenderPartial("Register", Model.RegisterModel); %>
</div>
<div>
    <% Html.RenderPartial("Login", Model.LoginModel); %>
</div>
Run Code Online (Sandbox Code Playgroud)

登录PartialView:

<% using (Html.BeginForm("Login", "Member")) { %>
<fieldset>
    <legend>Login</legend>
    <p>
        <%= Html.LabelFor(x => x.Nickname) %>
        <%= Html.TextBoxFor(x => x.Nickname) %>
    </p>
    <p>
        <%= Html.LabelFor(x => x.Password) %>
        <%= Html.PasswordFor(x => x.Password) %>
    </p>    
    <input type="submit" value="Login" />
</fieldset>
<% } %>
Run Code Online (Sandbox Code Playgroud)

注册PartialView:

<% using (Html.BeginForm("Register", "Member")) { %>
<fieldset>
    <legend>Register</legend>
    <p>
        <%= Html.LabelFor(x => x.Nickname) %>
        <%= Html.TextBoxFor(x => x.Nickname) %>
    </p>
    <p>
        <%= Html.LabelFor(x => …
Run Code Online (Sandbox Code Playgroud)

asp.net asp.net-mvc modelbinders viewmodel asp.net-mvc-2

12
推荐指数
2
解决办法
6043
查看次数

ASP.NET MVC 2 - 成员资格提供程序 - ValidateUser() - 返回登录错误消息

如何从自定义成员资格提供程序中的ValidateUser方法返回字符串消息?我需要这个,因为我想执行几项检查(用户被批准,用户被阻止等),并且如果登录过程失败,则给用户一个很好的描述.

一种选择是抛出异常,但有人说这不是处理这种情况的正确方法.

由于bool返回类型,我现在只能说"登录失败"或"登录成功".

是否可以创建自己的ValidateUser方法,或者ASP.NET成员资格机制是否在其内部操作中使用默认值?

asp.net asp.net-mvc asp.net-membership asp.net-mvc-2

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

递归 COUNT 查询 (SQL Server)

我有两个 MS SQL 表:类别、问题。每个问题都被分配到一个类别。一个类别可能有许多子类别。

类别

  • ID : bigint (PK)
  • 名称 : nvarchar(255)
  • 接受问题:位
  • IdParent : bigint (FK)

  • ID : bigint (PK)
  • 标题:nvarchar(255) ...
  • IdCategory : bigint (FK)

如何递归计算给定类别的所有问题(包括子类别中的问题)。我已经根据几个教程尝试过它,但仍然无法弄清楚:(

sql sql-server recursion stored-procedures

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

Excel - 格式值(掩码)

我想用这种方式格式化单元格值:

1234,980 - > 1.234,980

12237119867,761 - > 12.237.119.867,761

如何准备一个公共掩码,将点设置为千位分隔符和逗号为小数.掩码应该适用于任何提供的值.

excel excel-2007 excel-formula

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

如何在C#中将文件名传递给StandardInput(Process)?

我从命令行使用本机Windows应用程序spamc.exe(SpamAssassin - sawin32),如下所示:

C:\ SpamAssassin\spamc.exe -R <C:\ email.eml

现在我想从C#调用这个过程:

Process p = new Process();
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.RedirectStandardInput = true;
p.StartInfo.FileName = @"C:\SpamAssassin\spamc.exe";
p.StartInfo.Arguments = @"-R";
p.Start();

p.StandardInput.Write(@"C:\email.eml");
p.StandardInput.Close();
Console.Write(p.StandardOutput.ReadToEnd());
p.WaitForExit();
p.Close();
Run Code Online (Sandbox Code Playgroud)

上面的代码只是将文件名作为字符串传递给spamc.exe(不是文件的内容).但是,这个工作:

Process p = new Process();
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.RedirectStandardInput = true;
p.StartInfo.FileName = @"C:\SpamAssassin\spamc.exe";
p.StartInfo.Arguments = @"-R";
p.Start();

StreamReader sr = new StreamReader(@"C:\email.eml");
string msg = sr.ReadToEnd();
sr.Close();

p.StandardInput.Write(msg);
p.StandardInput.Close();
Console.Write(p.StandardOutput.ReadToEnd());
p.WaitForExit();
p.Close();
Run Code Online (Sandbox Code Playgroud)

如果我读取文件并将内容传递给spamc,有人会指出我为什么会工作,但是如果我只是像在Windows命令行中那样传递文件名,那么它是不行的?

.net c# command-line command process

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