问题列表 - 第34948页

在具有母版页的页面上查找控件

我必须Control在一个绑定到母版页的aspx页面中找到一个.

母版页包含:

<asp:ContentPlaceHolder ID="MainContent" runat="server"/>               
Run Code Online (Sandbox Code Playgroud)

内容页面包含:

<asp:Content ID="Content1" ContentPlaceHolderID="HeadContent" Runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" Runat="Server">
</asp:Content>
Run Code Online (Sandbox Code Playgroud)

我添加了一个TableID formtable作为一个孩子Content2.

我尝试使用以下代码来访问Table,但代码返回null:

protected void Ok_Click(object sender, EventArgs e)
{
    Table tblForm = this.FindControl("MainContent").FindControl("formtable") as Table;                 
}
Run Code Online (Sandbox Code Playgroud)

我该如何访问Table

c# asp.net master-pages findcontrol

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

在c#中将decimal转换为int

例如,当rate = 0.085时,为什么百分比会返回0?

int percentage = (int)rate*100;
Run Code Online (Sandbox Code Playgroud)

c#

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

所有操作系统的通用换行符是什么?(LF和CR)

当我使用Delphi编写文件时,它在Windows机器上,并且它发布的文本文件在Windows上运行正常.当我在Mac上使用它虽然它期望格式有点不同.在Mac上,换行符不同,它不能始终读取Windows文件.

如何让我的文件可以被mac程序读取?

windows delphi macos newline

11
推荐指数
3
解决办法
4285
查看次数

如何在我的mysql数据库中"批量编辑"一个字段

我的用户表中有一个字段,我想将"null"中的大约1000个条目更改为特定的邮政编码...是否可以运行查询?

mysql

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

groovy/grails/unit testing/createCriteria.get

我可以模拟调用:

MyDomainClass.createCriteria().list{
    eq('id',id)
    eq('anotherParameter',anotherParameterId)
}
Run Code Online (Sandbox Code Playgroud)

有:

def myCriteria = [
    list : {Closure  cls -> returnThisObject}
]
MyDomainClass.metaClass.static.createCriteria = { myCriteria }
Run Code Online (Sandbox Code Playgroud)

建议:

http://davistechyinfo.blogspot.com/2010/01/mocking-hibernate-criteria-in-grails.html

但对于:

MyDomainClass.createCriteria().get{
    eq('id',id)
    eq('anotherParameter',anotherParameterId)
}
Run Code Online (Sandbox Code Playgroud)

这种方法失败了 - 也许是因为'get'是一个'list'的关键字.任何人都可以建议 - 能够在域类中模拟这一点应该是可能的,而不是简单地放弃使用的方法的单元测试覆盖createCriteria().get{}.

建议非常感谢,

亚历克斯

grails groovy mocking hibernate-criteria

10
推荐指数
2
解决办法
5715
查看次数

在自定义Python类中重写默认方法的简便方法?

我有一个名为Cell的课程:

class Cell:

    def __init__(self, value, color, size):
        self._value = value
        self._color = color
        self._size = size

    # and other methods...
Run Code Online (Sandbox Code Playgroud)

Cell._value将存储字符串,整数等(无论我使用该对象).我想要通常使用对象的"值"的所有默认方法,<Cell object>._value以便我可以这样做:

>>> c1 = Cell(7, "blue", (5,10))
>>> c2 = Cell(8, "red", (10, 12))
>>> print c1 + c2
15

>>> c3 = Cell(["ab", "cd"], "yellow", (50, 50))
>>> print len(c3), c3
2 ['ab', 'cd']

# etc.
Run Code Online (Sandbox Code Playgroud)

我可以覆盖所有默认方法:

class Cell:

    def __init__(self, value, color, size):
        # ...

    def __repr__(self):
        return repr(self._value)

    def __str__(self):
        return str(self._value) …
Run Code Online (Sandbox Code Playgroud)

python methods overriding class

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

这个新的ASP.NET安全漏洞有多严重,我该如何解决它?

我刚刚在网上看到了ASP.NET中新发现的安全漏洞.你可以在这里阅读详细信息.

问题在于ASP.NET实现AES加密算法的方式,以保护这些应用程序生成的cookie的完整性,以便在用户会话期间存储信息.

这有点模糊,但这里有一个更令人恐惧的部分:

攻击的第一阶段需要几千个请求,但一旦成功并且攻击者获得了密钥,它就完全是隐秘的.所需的加密知识是非常基本的.

总而言之,我对安全性/密码学不够熟悉,但要知道这是否真的那么严重.

那么,是否所有ASP.NET开发人员都担心这种技术可以在几秒钟内拥有任何ASP.NET网站或者什么?

这个问题如何影响普通的ASP.NET开发人员?它会影响我们吗?在现实生活中,这个漏洞的后果是什么?最后:是否有一些可以防止此漏洞的解决方法?

谢谢你的回答!


编辑:让我总结一下我得到的答复

所以,这基本上是一种"填充oracle"类型的攻击.@Sri提供了一个很好的解释,说明这种类型的攻击是什么意思.这是一个关于这个问题的令人震惊的视频!

关于此漏洞的严重性:是的,它确实很严重.它允许攻击者了解应用程序的机器密钥.因此,他可以做一些非常不需要的事情.

  • 在应用程序的机器密钥的位置,攻击者可以解密身份验证cookie.
  • 更糟糕的是,他可以使用任何用户的名称生成身份验证cookie.因此,他可以像网站上的任何人一样出现.应用程序无法区分您或为您自己生成身份验证cookie的黑客.
  • 它还允许他解密(并生成)会话cookie,尽管这不像前一个那样危险.
  • 不那么严重:他可以解密加密的ViewState页面.(如果您使用ViewState存储确信数据,则不应该这样做!)
  • 非常意外:凭借对机器密钥的了解,攻击者可以从您的Web应用程序下载任意文件,即使是那些通常无法下载的文件!(包括Web.Config等)

以下是一些我没有解决问题的良好实践,但有助于提高Web应用程序的一般安全性.

现在,让我们关注这个问题.

解决方案

  • 启用customErrors并创建一个错误页面,重定向所有错误.是的,甚至404s.(ScottGu说,区分404s和500s对于这次攻击至关重要.)另外,进入你的Application_Error或者Error.aspx放一些随机延迟的代码.(生成一个随机数,并使用Thread.Sleep长时间休眠.)这将使攻击者无法确定您的服务器上究竟发生了什么.
  • 有些人建议切换回3DES.理论上,如果您不使用AES,则不会遇到AES实现中的安全漏洞.事实证明,根本不建议这样做.

其他一些想法

感谢所有回答我问题的人.我不仅了解了这个问题,还了解了网络安全性.我将@ Mikael的答案标记为已被接受,但其他答案也非常有用.

.net asp.net security padding-oracle-attack

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

使用ExecutorService生成的结果.哪一堂课?

我希望我能写下类/接口名称,但我没有......

在查看JDK javadoc时,我看到了一个类/接口的引用,目的是收集和使用ExecutorService(完成的Futures<T>s)产生的结果,可能是系统中的其他地方.当时我记下了它,因为它非常适合我需要的东西,但我似乎无法从舌尖上得到这个类的名字.

任何人都知道我指的是什么?

java multithreading future executorservice

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

用强名称签署我的程序集会阻止它工作

我的一位同事在VB.net中创建了一个程序集,用于通过COM互操作与JScript一起使用.组件过去工作正常,但我们签了它,现在它似乎只适用于Windows 7机器.我测试了2台Windows 7机器和2台Windows Vista机器.

当我们签署程序集并尝试在JScript中实例化ActiveX对象时,将返回一个错误,但没有消息,只有一个数字:

错误:
错误号:-2146234304

在Google上搜索错误编号并没有太多回复.

如果我们从程序集中删除强名称,它就可以正常工作.关于什么可能是问题的任何想法?不确定它是否有所作为,但正在使用VS 2010编译和签署程序集.

.net javascript strongname assemblies com-interop

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

如何设计用于从行创建动态列的查询

我有数据

表格1

ID     Name
-----------
1      n1
2      n2
3      n4
Run Code Online (Sandbox Code Playgroud)

表2

FID   YearS    Val
----------------------
1     2008     Up
1     2009     Down
1     2010     Up
2     2000     Up
2     2001     Down
2     2002     Up
2     2003     Up
3     2009     Down
3     2010     Up
Run Code Online (Sandbox Code Playgroud)

我想以下列格式返回数据:

ID  Yr1  Val1    Yr2   Val2  Yr3   Val3    Yr4  Val4
--------------------------------------------------------
1   2008 Up      2009  Down  2010  Up      NULL Null
2   2000 Up      2001  Down  2002  Up      2003 Up
3   2009 Down    2010  Up    NULL  NULL    NULL …
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server sql-server-2005 sql-server-2008

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