我刚开始学习XML安全性.我们有VS-2005和ASP.Net 2.0.我想将XML发送到外部URL并且需要加密.我正在做MSDN文章ms229744和ms229943正在做的事情,但在执行DecryptDocument()方法时,我不断收到"无法检索解密密钥".我正在使用我们的SSL Web证书,我目前使用X509Certificate对XML进行数字签名,它运行正常.
我还要求其他人从另一家商店尝试这个,他们也得到了同样的错误.是否存在X509解密方法的文档问题?在下面的测试代码中,我将XML发布到另一个试图解密XML的网页.我不明白的是,如果DecryptDocument()方法甚至不检查是否嵌入了公钥,它是如何工作的.这是问题吗?如果是这样,我如何检查以确保它嵌入在XML中?任何帮助表示赞赏.谢谢!
Private Function EncryptXml(ByVal xmlDoc As XmlDocument, ByVal Cert As X509Certificates.X509Certificate2) As XmlDocument
Dim dataNodes As XmlNodeList = xmlDoc.SelectNodes("Agency")
If dataNodes.Count <> 1 Then
Return Nothing
End If
Dim elementToEncrypt As XmlElement = CType(xmlDoc.GetElementsByTagName("Agency")(0), XmlElement)
Dim eXml As New EncryptedXml()
Dim Key As RSACryptoServiceProvider = CType(Cert.PrivateKey, RSACryptoServiceProvider)
Dim edElement As EncryptedData = eXml.Encrypt(elementToEncrypt, Cert)
EncryptedXml.ReplaceElement(elementToEncrypt, edElement, False)
Return xmlDoc
End Function
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load …Run Code Online (Sandbox Code Playgroud) 好吧,我正在尝试采用更加pythonic的方法.
我该怎么做:
required_values = ['A','B','C']
some_map = {'A' : 1, 'B' : 2, 'C' : 3, 'D' : 4}
for required_value in required_values:
if not required_value in some_map:
print 'It Doesnt Exists'
return False
return True
Run Code Online (Sandbox Code Playgroud)
我查看了内置函数all,但我真的不知道如何将其应用于上述场景.
有什么建议使这更pythonic?
我正在尝试按月使用HQL对某些行进行分组,但我对该API并不熟悉,似乎无法使其工作.
这是我的代码:
Criteria query = getHibernateSession().createCriteria(SalesPerformance.class);
// summary report is grouped by date
query.setProjection(Projections.projectionList().add(
Projections.groupProperty("effectiveDate"), "effectiveDate").add(
Projections.groupProperty("primaryKey.seller", "seller").add(
Projections.sum("totalSales"))));
// sub-select based on seller id
query.add(Property.forName("primaryKey.seller.id").eq(sellerId)).setFetchMode(
"primaryKey.seller", FetchMode.SELECT);
query.add(Property.forName("primaryKey.effectiveDate").le(new Date()));
query.add(Property.forName("primaryKey.effectiveDate").ge(DateUtils.truncate(new Date(), Calendar.MONTH)));
query.addOrder(Order.desc("primaryKey.effectiveDate"));
return query.list();
Run Code Online (Sandbox Code Playgroud)
我对这个查询的问题是,由于Projections.groupProperty("effectiveDate"),当我每个月需要一行时,它每天会返回一行.
我想过使用Projections.sqlGroupProjection而不是Projections.groupProperty并抛出一些HQL,但是我发现的文档和几个例子并没有真正帮助我理解如何在该方法中使用正确的postresql语句.
任何了解Postgres和HQL的人都可以在这里给出一些提示吗?
我从来没有这样做,但我将转发器绑定到一个通用的字符串列表,我不确定正确的语法.
如果我绑定到IList并且myType有一个属性LayerName,我会使用它:
<asp:Repeater ID="rptChecks" runat="server">
<ItemTemplate>
<input type="checkbox" id="<%#Eval("LayerName") %>"/>
</ItemTemplate>
</asp:Repeater>
Run Code Online (Sandbox Code Playgroud)
当我只绑定一个没有任何属性的字符串时,我怎么能这样做呢?
对于我偶尔使用和修改的给定MySQL数据库,我最近必须对某些表和存储过程进行一些更改.此DB中有一些位置可以调用其他过程.我找到了在任何地方搜寻我需要修改这些修改过程的参数的麻烦的任务,并且使用转储数据库并对转储文件进行文本搜索以查找所有CALL语句.
我想知道是否有更好更简单的方法来做到这一点.我在这里做了一些粗略的搜索,并搜索了一个解决方案,但实际上没有找到答案.我怀疑有一种方法可以提出一个调用列表或一些实用程序使其变得简单,但我还没有找到这个解决方案.
有任何想法吗?
我希望有一个有序列表,左侧有文本,而li右侧有每个li的图像.所以我将图像浮动到右边,它将图像正确地放在右边,文本放在左边,但是在IE和FF中图像的像素太低了14个像素.Chrome做得对.在我看来,这是IE和FF将浮动放在每个LI的外部或下方而不是它应该在的内部(如Chrome).如果我为IE和FF调整位置-14px(向上),它可以正常工作,但Chrome会搞砸.14px是每个LI的高度,这就是为什么这个技巧有效.
除非绝对需要,否则我不想要单个浏览器黑客攻击(即,为IE/FF执行-14px偏移并告诉Chrome忽略它).
#top25list{
width:185px;
cursor:n-resize;
list-style:
decimal inside;
padding:0;
margin:0
}
#top25list li{
margin:0;
padding:0 3px;
background-color:#FFF;
border-top:1px solid #990100;
border-bottom:1px solid #990100
}
#top25list img{
border:none;
height:13px;
width:13px;
float:right
}
#top25list li:hover{
background-color:#990100;
color:#FFF
}
Run Code Online (Sandbox Code Playgroud)
李的没什么特别的:
<li id=##>Name <a href="#" rel="##" class="removeTeam"><img src="/images/button-x.png" alt="Remove Name"></a></li>
Run Code Online (Sandbox Code Playgroud)
看到第一个LI没有FF/IE的图像,因为它在下面(它看起来像#2),而#25图像不在列表的底部.
我希望所有3看起来像Chrome.有一些JavaScript生成OL/LI,它只class=removeTeam适用于jQuery操作.这个列表在jQuery可排序的内部,我确实用jQuery(.disableSelection();)禁用了列表选择.我不认为这与jQuery或JavaScript有任何关系,只是简单的CSS.
当我将特定的存储过程拖到VS 2008 dbml设计器中时,它会显示返回类型设置为"none",并且它是只读的,因此我无法更改它.设计器代码将其显示为返回int,如果我手动更改它,它将在下一个构建时撤消.
但是使用另一个(几乎相同的)存储过程,我可以很好地改变返回类型(从"自动生成类型"到我想要的.)
我在两台独立的机器上遇到了这个问题.知道发生了什么事吗?
这是有效的存储过程:
USE [studio]
GO
/****** Object: StoredProcedure [dbo].[GetCourseAnnouncements] Script Date: 05/29/2009 09:44:51 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER OFF
GO
CREATE PROCEDURE [dbo].[GetCourseAnnouncements]
@course int
AS
SELECT * FROM Announcements WHERE Announcements.course = @course
RETURN
Run Code Online (Sandbox Code Playgroud)
而这个不是:
USE [studio]
GO
/****** Object: StoredProcedure [dbo].[GetCourseAssignments] Script Date: 05/29/2009 09:45:32 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER OFF
GO
CREATE PROCEDURE [dbo].[GetCourseAssignments]
@course int
AS
SELECT * FROM Assignments WHERE Assignments.course = @course ORDER BY date_due ASC …Run Code Online (Sandbox Code Playgroud) 有没有办法确定Linux中已经运行的程序的当前工作目录?
我想要实现的是我希望能够在终端中工作,然后设置一个键盘快捷键,它将运行我正在编写的工具,它显示一个包含一些信息和一些按钮的弹出窗口动作.这个工具需要一个工作目录,以便它知道要处理哪些数据,并且我希望能够设置它以便它可以在我在终端中工作的目录上工作.
mysql ×2
asp.net ×1
asp.net-3.5 ×1
bash ×1
c# ×1
css ×1
css-float ×1
data-binding ×1
group-by ×1
hibernate ×1
html-lists ×1
image ×1
linq-to-sql ×1
linux ×1
list ×1
listitem ×1
maintenance ×1
php ×1
postgresql ×1
python ×1
repeater ×1
shell ×1
xml ×1