小编Mel*_*sus的帖子

Asp.Net MVC从视图中调用另一个控制器

假设我在页面"主页/索引",我想转到页面MyOtherController/Index/1

我怎样才能做到这一点 ?

我尝试:

<%= Html.ActionLink("Test", "Index", "MyOtherController", new { id=item.Id }) %>

我是否还必须在Global.aspx文件中添加路由?

asp.net-mvc

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

Sql Server - 约束 - 仅当列B为空时允许设置列A,反之亦然

有没有办法在SQL Server 2008中添加一个约束来验证如果用户试图在列A中输入一个值,它只能在列B为空时反之亦然

  • 如果A为NULL,则B可以具有值
  • 如果B为NULL,则A可以有值
  • A和B不能同时具有价值

sql sql-server constraints

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

VB.NET:哪个 As 子句与带有 Option Strict On 的匿名类型一起使用?

考虑始终声明的要求Option Strict On。我们总是需要用As关键字声明变量。匿名类型的类型是什么?

例子 : Dim product As ... = New With { Key .Name = "paperclips", .Price = 1.29 }

将遵循什么As

vb.net anonymous-types option-strict

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

Asp.Net Ajax - 调用非静态方法

从客户端,我需要调用非静态的服务器方法.

例如,我在load事件中获得了以下用户控件ucData(代码隐藏的私有实例),它是Databind.

我需要的服务器方法应该返回ucData.IsValid().所以它不能是静态的

有没有办法可以做到这一点?

asp.net ajax jquery static

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

Asp.Net MVC - FluentValidation

在Asp.Net MVC中有没有办法使用某种流畅的验证?

我的意思是,而不是像我那样验证我的poco:

public class User {

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

有类似的东西(在外部类):

User.Validate("Required", "Id");
Run Code Online (Sandbox Code Playgroud)

在Asp.Net MVC 2(或3)中有可能吗?

我知道FluentValidation库存在,但我想知道Asp.Net MVC的核心是否允许这样做.

我不喜欢那样污染我的POCO.另外,如果我需要验证会发生什么,让我们说BeginDate在EndDate之前?使用属性,您无法做到这一点.

validation asp.net-mvc

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

命名空间问题,单个解决方案中的多个项目

我正在从MVC书中跟随示例。我被要求在一个解决方案中创建三个项目(C#库,MVC 2和测试)。我通过右键单击解决方案名称并选择“添加>新项目”来做到这一点。项目名称是:

MVCSample.Domain
MVCSample.WebUI
MVCSample.Test
Run Code Online (Sandbox Code Playgroud)

看起来不错,但是我无法将Domain名称空间从WebUI项目添加到类中。当我using MVCSample.WebUI控件(类形式)中编写语句时,InteliSense提示仅.WebUI作为匹配的结尾。我怎么了

我正在使用VS 2010专业版。

asp.net-mvc namespaces visual-studio-2010

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

Linq获取所有控件(已订购)

有没有办法使用linq获取所有控件.

我想做的是这样的事情(按标签索引命令控制):

foreach (Control control in this.Controls.OrderBy(c => c.TabIndex)
{
    ...
}
Run Code Online (Sandbox Code Playgroud)

当我得到List <...>时,我使用那种查询

我使用c#和.Net 3.5

.net c# linq .net-3.5

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

C#ControlCollection扩展GetAllTextboxes

我怎么才能得到ControlCollection中的texbox?

我尝试:

public static IEnumerable<TextBox> TextBoxes(this ControlCollection controlCollection)
{
    return (IEnumerable<TextBox>)controlCollection.Cast<Control>().Where(c => c is TextBox);
}
Run Code Online (Sandbox Code Playgroud)

但是我收到以下错误:无法将'WhereEnumerableIterator`1 [System.Web.UI.Control]'类型的对象强制转换为'System.Collections.Generic.IEnumerable`1 [System.Web.UI.WebControls.TextBox] ".

我用C#使用Asp.Net 3.5

asp.net controlcollection c#-3.0

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

Asp.Net Mvc - ContentPlaceHolder- Javascript

根据我的页面,我希望更改javascript函数的内容.

示例:

母版

<script type="text/javascript">
    Cufon.now();
    Cufon.replace('p#characters', { fontFamily: 'Helvetica95-Black' });
</script>
Run Code Online (Sandbox Code Playgroud)

页面A.

<script type="text/javascript">
    Cufon.now();
    Cufon.replace('p#characters', { fontFamily: 'Helvetica95-Black' });
    Cufon.replace('p#others', { fontFamily: 'Helvetica95-Black' });
</script>
Run Code Online (Sandbox Code Playgroud)

因为我不想重复代码,所以我正在寻求解决方案.我想也许我可以使用像这样的ContentPlaceHolder(但它不起作用):

<script type="text/javascript">
    Cufon.now();
    Cufon.replace('p#characters', { fontFamily: 'Helvetica95-Black' });

    <asp:ContentPlaceHolder id="cphJS" runat="server" />
</script>
Run Code Online (Sandbox Code Playgroud)

有什么方法可以解决这类问题吗?

UPDATE

我想避免的是拥有这样的代码:

// Add by MasterPage
<script type="text/javascript">
    Cufon.now();
    Cufon.replace('p#characters', { fontFamily: 'Helvetica95-Black' });
</script>

// Add by Page A
<script type="text/javascript">
    Cufon.now();
    Cufon.replace('p#others', { fontFamily: 'Helvetica95-Black' });
</script>

// Add by Page B
<script type="text/javascript">
    Cufon.now();
    Cufon.replace('p#main', …
Run Code Online (Sandbox Code Playgroud)

javascript asp.net-mvc contentplaceholder

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

c#数组函数参数传递一个维度

假设我有这个功能:

void int Calculate(double[] array) {}
Run Code Online (Sandbox Code Playgroud)

在我的主要部分,我得到了这个数组:

double[,] myArray = new double[3,3];
Run Code Online (Sandbox Code Playgroud)

我该如何调用Calculate(...)?

我试试(那不编译):

double[] mySingleArray = myArray[0];
Run Code Online (Sandbox Code Playgroud)

我想避免的是不必要的循环(for).

我声明了一个常规数组,但如果一个锯齿状数组或任何其他类型的数组效果更好,那对我来说没问题.

我使用c#3.5

.net c# arrays .net-3.5

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

Asp.Net MVC RenderPartial的不同型号

我有一个继承的观点: System.Web.Mvc.ViewPage<IEnumerable<MyProjects.Models.MyAccountWrapper>>

在此视图中,我列出了有关对象MyAccountWrapper的数据.该对象包含Account列表.喜欢这个MyAccountWrapper.Accounts

在这个视图中我想要的是能够创建一个帐户.

所以我试试 <% Html.RenderPartial("../Account/Create"); %>

但我得到的错误不是好模特.我该怎么处理?

asp.net-mvc renderpartial

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

C# - 使用属性的替代方法

假设我得到以下内容:

public class A {
     [MyAttribute]
     public void Test() {}
}
Run Code Online (Sandbox Code Playgroud)

我不喜欢添加属性以使用[]为方法或类添加前缀的行为.我认为这会使代码的可读性降低.

我发现更好的方法可能是这样的:

AddAttribute(A, Test, MyAttribute);
Run Code Online (Sandbox Code Playgroud)

有没有办法做这样的事情?

因为那是在运行时添加属性的某种方式......

或者有其他方式使用属性?像xml文件?

.net c# reflection attributes .net-4.0

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

Asp.Net - 如果未启用JavaScript,则重定向

我在我的母版页面中获得了此代码:

<script type="text/javascript">
    $("#<%=hfJavaScriptDetected.ClientID %>").val('yes');
 </script>

<asp:HiddenField ID="hfJavaScriptDetected" runat="server" Value="no" />
Run Code Online (Sandbox Code Playgroud)

因此,如果启用了JavaScript,则应该更改隐藏字段的值.

现在,我想要做的是在服务器端检查此值,如果它设置为"no",我想将用户重定向到页面Javascript.Aspx.

我不知道在哪个事件中查看隐藏字段值.我尝试了Page_Load事件,但似乎隐藏的字段值尚未设置.

javascript asp.net-3.5

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