小编J.D*_*Ray的帖子

适用于初学者的ASP.NET MVC5和DataTables:什么在哪里?

我在DataTables论坛上问了这个问题,但为了获得快速反馈,我愿意忍受一些滥用,所以我在这里交叉发帖.


我刚刚开始冒险进入ASP.NET MVC5,拥有牢固扎根于1995年的Web开发技能.经过一番努力,基本的CRUD应用程序正在运行,我正在着手打扮一些.DataTables提供的功能似乎非常合适.

我对JavaScript的理解可以放在一个小的注释块中,但我可以遵循格式良好的指令.所以,当我发现文档说"只需添加这三行包含行和JS的这一行,然后你就开始运行",我认为这很简单.我做了我认为的指示所说的,没有任何改变.做了更多的研究,我发现某人的项目为MVC5和DataTables 1.10创建了绑定,但是指令很稀疏(如果你理解他们要告诉你的事情,"简单"只是很容易).

从DataTables说明开始("只需添加这三行......"),这就是我所拥有的:

<!-- DataTables CSS -->
<link rel="stylesheet" type="text/css" href="//cdn.datatables.net/1.10.5/css/jquery.dataTables.css">

<!-- jQuery -->
<script type="text/javascript" charset="utf8" src="//code.jquery.com/jquery-1.10.2.min.js"></script>

<!-- DataTables -->
<script type="text/javascript" charset="utf8" src="//cdn.datatables.net/1.10.5/js/jquery.dataTables.js">
</script>

<h2>Index</h2>

<p>
    @Html.ActionLink("Create New", "Create")
</p>
<table class="table" id="products" >
    <tr>
        <th> @Html.DisplayName("Code")</th>
        <th>@Html.DisplayNameFor(model => model.Name)</th>
        <th>@Html.DisplayNameFor(model => model.Category)</th>
        <th>@Html.DisplayName("Active")</th>
        <th>@Html.DisplayName("Published")</th>
    </tr>

@foreach (var item in Model) {
    <tr>
        <td>@Html.DisplayFor(modelItem => item.ProductCode)</td>
        <td>@Html.DisplayFor(modelItem => item.Name)</td>
        <td>@Html.DisplayFor(modelItem => item.Category)</td>
        <td>@Html.DisplayFor(modelItem => item.Active.Value)</td>
        <td>@Html.DisplayFor(modelItem => item.Published.Value)</td>
        <td>@Html.ActionLink("Details", "Details", new { id=item.ID })</td>
    </tr> …
Run Code Online (Sandbox Code Playgroud)

datatables asp.net-mvc-5

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

我应该在分部类中分离属性和方法吗?

我正在为应用程序编写基础类,并希望正确构建它们以实现长期可维护性.为此,我正在研究实现哪些设计模式,使用接口,抽象类以及将持久性与活动分离.我的头脑游泳的模式,范例和原则.

我有一个类Product,我已经创建了一个接口IProduct.我相信我需要制作Product和抽象类,因为它的任何实例都需要是属性的六个值之一Category.所以,我的第一个问题:以下是适当的方法吗?

abstract class Product : IProduct
{
    // Fields
    // Properties
    // Methods
}

interface IProduct
{
    // Properties
}

public class Model : IProduct
{
    public Model()
    {
        Category = "Model";
    }

    // Model-specific fields
    // Model-specific properties
    // Model-specific methods
}
Run Code Online (Sandbox Code Playgroud)

我读过的文章,包括此前回答的问题,表明我应该设计属性和方法的分离(持久性和活动性).为此,上面的代码真的应该是这样的吗?

abstract class Product : IProduct
{
    // Fields
    // Properties
    // Methods
}

interface IProduct
{
    // Properties
}

public partial class Model : IProduct
{
    public …
Run Code Online (Sandbox Code Playgroud)

c# oop

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

如何在C#中创建互斥属性

我有一个有三个属性的类:

class PriceCondition
{
    public Product SalesCode {...}
    public ControlDate Condition {...}
    public PriceDetail Pricing {...}
}
Run Code Online (Sandbox Code Playgroud)

任何实例PriceCondition只能有一个SalesCode或一个Condition.如果Condition被选中,则Pricing需要,但这与此讨论无关.

作为一个相对较差的程序员,我最初尝试以下方法:

    public Product SalesCode
    {
        get { return _salesCode; }
        set 
        {
            this.Condition = null;
            _salesCode = value; 
        }
    }

    public ControlDate Condition
    {
        get { return _cond; }
        set 
        {
            this.SalesCode = null;
            _cond = value; 
        }
    }
Run Code Online (Sandbox Code Playgroud)

事后看来,很明显为什么会造成堆栈溢出.寻找正确的方法,我找到了关于XORing a的这个SO答案List,但是我无法弄清楚如何将其应用于我正在尝试做的事情,因为这Except是一种IEnumerable方法,而我没有使用List<T>或类似的东西.

如何确保任何时候只设置其中一个属性?我可以var …

c#

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

为什么构造函数不是设置参数?

我正在缩小完成专门的数据解析和管理类,并遇到了一个我似乎无法弄清楚的问题.

我有一个名为的活动类RecordDisposal和一个名为的数据类DisposalRecord(对于糟糕的命名感到抱歉;我无法想出任何其他不会将此事与其他事情混淆的事情).

所以我设置了一些基本测试,事情并没有真正解决(见图).在断点处,该字段UnparsedRetentionCode应该已设置为参数值RetentionCode(请参见断点上方的行),在本例中为1,但不是(请参见底部的Locals窗口).

我做错了什么?

在此输入图像描述

c# parameters constructor field

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

标签 统计

c# ×3

asp.net-mvc-5 ×1

constructor ×1

datatables ×1

field ×1

oop ×1

parameters ×1