小编Ste*_*ven的帖子

防止站点范围内的XSS攻击

我是ColdFusion的新手,所以我不确定是否有一种简单的方法可以做到这一点.我被指派在这个CF站点修复站点范围内的XSS漏洞.不幸的是,有大量的页面正在接受用户输入,并且几乎不可能进入并修改它们.

有没有办法(在CF或JS中)轻松防止整个站点的XSS攻击?

html javascript security xss coldfusion

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

存储信用卡信息的替代方法

可能重复:
存储信用卡详细信息

我正在为用户可以登录和购买产品的网站创建架构.我的老板希望结账页面记住用户的信用卡信息,这样他们就不必每次都输入它,比如亚马逊.

出于各种原因,我不想将信用卡信息存储在数据库中; 我拒绝这样做.但我的老板坚持在网站上记住用户的信用卡信息.

那么,如何实现呢?它显然正在完成,除非像亚马逊这样的网站存储用户的信用卡信息并使其非常安全.

payment-processing

6
推荐指数
2
解决办法
724
查看次数

将DataTable中的列的DataType从DateTime更改为String

我正在将数据从我的数据库加载到DataTable中,其中一列是日期字段.

using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString))
{
    SqlCommand cmd = conn.CreateCommand();
    cmd.CommandText = "MySP";
    cmd.CommandType = CommandType.StoredProcedure;

    conn.Open();
    using (SqlDataReader rdr = cmd.ExecuteReader())
    {
        dt.Load(rdr);
    }
}
Run Code Online (Sandbox Code Playgroud)

我想格式化该列,以便它不是包含完整日期,而是格式化为"MM/DD/YYYY".

我已经尝试循环遍历表中的每一行并更改该列的单元格,但是我收到一条错误,指出该字符串不是有效的DateTime对象.

我尝试将列DateType更改为字符串,但是我收到一条错误消息,表示在填充表后我无法更改DateType.

我怎样才能做到这一点?这看起来很简单,但我遇到了这么多麻烦.

.net c# asp.net

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

无法从用法推断出方法System.Linq.Enumerable.OrderBy的类型参数

我正在尝试按照此链接中的演示将jqGrid添加到MVC应用程序.

我有一个名为Companies的表,我试图在网格中显示.公司只包含ID和名称.

我在控制器功能中遇到错误:

public JsonResult DynamicGridData(string sortIndex, string sortOrder, int page, int rows)
{
    int pageIndex = Convert.ToInt32(page) - 1;
    int pageSize = rows;

    var companies = companiesRepository.Companies.OrderBy(sortIndex + " " + sortOrder).Skip(pageIndex * pageSize).Take(pageSize);
    //Error here

    ...
}
Run Code Online (Sandbox Code Playgroud)

我在调用OrderBy()的行上收到错误:

无法从用法中推断出方法'System.Linq.Enumerable.OrderBy(System.Collections.Generic.IEnumerable,System.Func)'的类型参数.尝试显式指定类型参数.

我真的不知道这个错误是什么意思,我也找不到解释.我不确定在简单的OrderBy函数上导致此错误的原因.

c# asp.net asp.net-mvc linq-to-sql

6
推荐指数
4
解决办法
3万
查看次数

从Entity Framework连接字符串创建DataContext?

我正在尝试在我的代码中进行此调用:

string conn = ConfigurationManager.ConnectionStrings["MyDBEntities"].ConnectionString;
DataContext context = new DataContext(conn);
Table<MyApp.Entities.Employee> myTable = context.GetTable<MyApp.Entities.Employee>();
Run Code Online (Sandbox Code Playgroud)

这是我的连接字符串:

<connectionStrings>
  <add name="MyDBEntities" connectionString="metadata=res://*/Entities.MyDB.csdl|res://*/Entities.MyDB.ssdl|res://*/Entities.MyDB.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=STEVEN-PC;Initial Catalog=MyDB;Integrated Security=True;MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient" />
  <add name="MyDB" connectionString="Server=STEVEN-PC;Database=MyDB;Trusted_Connection=yes;" />
</connectionStrings>
Run Code Online (Sandbox Code Playgroud)

创建DataContext时出错:不支持关键字:'metadata'.

如果我使用第二个连接字符串,我在尝试获取表时出错:'/'应用程序中的服务器错误."MyApp.Entities.Employee"类型未映射为表格.

我在这做错了什么?

c# asp.net entity-framework

6
推荐指数
3
解决办法
4万
查看次数

客户端自定义数据注释验证

我已经创建了一个自定义数据注释来对我的视图模型进行一些验证.问题是它没有在客户端验证.这是我的模特:

public class MemberViewModel
{
    [ScaffoldColumn(false)]
    public int MemberId { get; set; }

    [Required(ErrorMessage = "Name is required")]
    public string Name { get; set; }

    //My custom data annotation
    [EnforceTrue(ErrorMessage = "You must agree to the Terms and Conditions")]
    public bool AgreeTerms { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我的数据注释验证码:

public class EnforceTrueAttribute : ValidationAttribute, IClientValidatable
{
    public EnforceTrueAttribute() { }

    public override bool IsValid(object value)
    {
        return value != null && (bool)value == true;
    }

    public IEnumerable<ModelClientValidationRule> GetClientValidationRules(ModelMetadata metadata, ControllerContext context) …
Run Code Online (Sandbox Code Playgroud)

c# asp.net asp.net-mvc razor asp.net-mvc-3

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

设置列表项的宽度以填充无序列表

所以我有一个设置宽度的水平无序列表.在里面,我有一个动态数量的列表项.它可能是2项,或6 - 它取决于几个因素.

我希望能够设置每个列表项的宽度,以便它们填充ul的整个宽度,无论内部有多少项.所以,如果有1个列表项,则宽度为100%; 2,它们都是50%,依此类推.

这是我的HTML和CSS:

ul
{
    width: 300px;
    height: 50px;
    background-color: #000000;
    list-style: none;
    margin: 0;
    padding: 0;
}

li
{
    float: left;
    height: 50px;
    background-color: #4265CE;
    margin: 0;
    padding: 0;
}

<ul>
    <li>Item 1</li>
    <li>Item 2</li>
    <li>Item 3</li>
    <li>Item 4</li>
</ul>
Run Code Online (Sandbox Code Playgroud)

这里是jFiddle:http://jsfiddle.net/vDVvm/3/

有没有办法用CSS做到这一点,还是我必须使用jQuery?

html css jquery

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

实体框架中的级联删除

所以我有两个表,Invoices和InvoiceItems.当我删除发票时,我也希望删除所有相关的InvoiceItems.

我更新了SQL Server中的关系,以便在删除发票时进行级联删除.然而,实体框架没有认识到这种改变,但我已经读过我需要手动更新我的EDMX以进行级联删除.

在我的EDMX的设计视图中,我点击了两个表之间的关系,并检查了属性以尝试设置我的级联删除

在此输入图像描述

如您所见,有两个OnDelete属性:End1 OnDelete和End2 OnDelete

我需要将哪一个设置为Cascade?

c# asp.net entity-framework entity-framework-4

6
推荐指数
2
解决办法
2774
查看次数

使用实例引用无法访问成员'string.Format(string,params object [])'; 用类型名称来限定它

我有一个显示合同列表的页面.每行包含一个Amount,一个Fee和一个Total,我正在计算该行的行.

我也试图计算总计,总计来自集合的总计.

这就是我所拥有的:

var contracts = _contractsRepository.Contracts.
    Select(c => new ContractViewModel
    {
        ContractId = c.ContractID,                                            
        Amount = c.Amount,
        Fee = c.Fee,
        Total = c.Sum(cc => cc.Amount) + c.Sum(cc => cc.AdminFee)
    });

// error here
ViewBag.GrandTotal = contracts.Sum(c => c.Total).ToString().Format("{0:c}");
Run Code Online (Sandbox Code Playgroud)

当我尝试计算总计时,我得到一个编译错误:

使用实例引用无法访问成员'string.Format(string,params object [])'; 用类型名称来限定它

有谁知道我能做些什么来解决这个问题?

c# asp.net asp.net-mvc

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

剃刀 - 使用foreach,每隔n项插入html

我正在使用Razor和MVC 5在我的页面上输出大量项目.这是我目前所拥有的:

@foreach (var item in Model.Items)
{
    <a>@item.Name</a>
}
Run Code Online (Sandbox Code Playgroud)

我想要做的是输出这个:

<div class="tab-0">
    <a>Item 1</a>
    <a>Item 2</a>
    <a>Item 3</a>
    <a>Item 4</a>
</div>
<div class="tab-1">
    <a>Item 5</a>
    <a>Item 6</a>
    <a>Item 7</a>
    <a>Item 8</a>
</div>
<div class="tab-2">
    <a>Item 9</a>
    <a>Item 10</a>
    <a>Item 11/a>
    <a>Item 12</a>
</div>
Run Code Online (Sandbox Code Playgroud)

我需要在div标签中对每4个项目进行分组.我怎么能在剃刀中做到这一点?

c# asp.net-mvc razor

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