我在个人项目中使用亚马逊网络服务.我已经抓住了他们的AWS SDK for .NET,我正在使用它,但我有点困惑.
访问Web服务(在这种情况下,SimpleDB,虽然我不认为这对问题非常重要)是通过私钥/公钥对授权的.
用于创建客户端对象的AWS SDK for .NET API需要私钥:
AWSClientFactory.CreateAmazonSimpleDBClient(publicKey, privateKey);
Run Code Online (Sandbox Code Playgroud)这是一个客户端应用程序,因此代码将完全在客户端上运行.
建议客户端需要访问我的私钥才能访问SimpleDB.但亚马逊反复并强调说我的私钥不能让我的控制权.
这对我来说没有意义,所以我认为我必须遗漏一些东西.
客户端应用程序通常是亚马逊Web服务的错误模型,使用他们的AWS SDK for .NET,还是我遗漏了使客户端应用程序完全合理的东西?有没有一种很好的方法可以解决这个问题,而无需创建我自己的代理服务来验证客户端并将其请求转发给SimpleDB?
我有一个需要键入表的自定义对象的问题.我需要生成一个唯一的数字键.我有碰撞问题,我想知道我是否可以利用字典来帮助我.假设我有一个这样的对象:
class Thingy
{
public string Foo;
public string Bar;
public string Others;
}
Run Code Online (Sandbox Code Playgroud)
等等有更多领域.让我们说Foo和Bar是我的关键字段 - 如果它们在两个Thingys之间相等,那么这两个对象应该被认为是相等的(一个可能代表对另一个的更新,其他字段正在更新.)所以我有这些:
public override bool Equals(object obj)
{
Thingy thing = (Thingy)obj; // yes I do type check first
return (this.Foo == thing.Foo && this.Bar == thing.Bar);
}
public override int GetHashCode()
{
return (this.Foo + this.Bar).GetHashCode(); // using default string impl
}
Run Code Online (Sandbox Code Playgroud)
所以这在很大程度上是有效的,但是在极少数情况下,两个实际上不同的Thing具有相同的哈希码.
我的问题是:我可以使用词典<Thingy, int>我放在我的Thingys中,并使用字典中的顺序值作为我的实际键吗?我想知道,当检测到罕见的哈希代码冲突时,字典是否会调用我的Equals方法,确定对象实际上是不同的,并以不同方式存储它们.我在查找时进行成像,它会看到该哈希的桶并搜索正确的Thingy,再次使用Equals进行比较.
这是字典的情况,还是仅解决哈希码不同的冲突,但(哈希值大小)是否相同?如果这不起作用,可能会怎样?
我正在考虑使用ASP.NET成员资格提供程序通过一种登录方法来使用几种不同的Web应用程序/工具.
要求
用户登录my.domain.com并查看他们有权使用的应用/工具列表.用户选择他们想要使用的工具并单击该链接.当工具打开时,它能够识别出他们当前已登录以及他们要识别应用程序的任何唯一权限.
我知道每个应用程序可以简单地指向相同的后端成员资格提供程序数据库,但是每个应用程序是否需要登录,或者它是否能够识别用户是否已经登录?
asp.net security asp.net-mvc asp.net-membership membership-provider
我有一个绘图功能,只需要一个HDC.但是我需要展示一个精确版本的打印版本.
所以目前,我使用带有打印机HDC的CreateCompatibleDC()和带有打印机HDC的CreateCompatibleBitmap().
我这样想DC会有打印机的确切宽度和高度.当我在这个HDC中选择字体时,文本将与打印机完全一样.
不幸的是,我不能让StretchBlt()将这个HDC的像素复制到控件的HDC,因为我猜它们是不同的HDC类型.
如果我从具有与打印机页面相同的w,h的HDC窗口创建"内存画布",那么这些字体会因为缩放屏幕而不是页面而显示出来.
我应该从窗口的DC和CreateCompatibleBitmap()从打印机的DC或其他东西创建CompatibleDC()吗?
如果有人可以解释这样做的正确方法.(并且仍然有像打印机那样看起来很完美的东西)......
好吧,我很感激!!
...史蒂夫
我有一个WCF服务方法,我想异步执行一些操作(这样返回调用者几乎没有额外的延迟).在方法中生成System.ComponentModel.BackgroundWorker是否安全?我实际上是用它来调用其他一个服务方法,所以如果有办法异步调用其中一个,那就可以了.
BackgroundWorker是一种可行的方式,或者在WCF服务中有更好的方法或问题吗?
我们有一个用C语言实现的非常复杂的逻辑库.它有一个命令行界面,没有太复杂的基于字符串的参数.为了访问它,我们希望包装库,以便可以使用简单的XML RPC或甚至简单的HTTP POST调用来访问它.
有一些Java经验,我的第一个想法是
我相信应该已经有一些可以使用的简单,所以我在这里发布这个问题.解决方案具有以下要求
作为JNI/JNA提议的替代方案,我认为在C#世界中编写Web服务并调用这个非托管代码模块应该不会太难,但我希望有人可以给我一些关于需求的可行指针.
是否有Page.Refresh类型的命令来刷新页面?
我不想重定向到页面或用JavaScript刷新.
我有一个问题,这个存储过程在我们的应用程序中99%的时间都有效,但是从应用程序的特定部分调用时会超时.
该表只有3列,包含大约300条记录.存储过程只会带回一条记录,看起来像这样
"从Table Where Column = @parameter中选择*
当在管理工作室中执行sp时,它需要:00秒.
存储过程在我们的应用程序中经常使用,但似乎只是在我们程序的一个特定部分中超时.我想不出为什么这么简单的sp会超时的原因.有任何想法吗?
这是一个vb.net桌面应用程序并使用sql server 2005.
我有包含数字及其单位的字符串,例如2GB,17ft等.我想将数字与单位分开并创建2个不同的字符串.有时,它们之间有一个空格(例如2 GB),并且使用split('')很容易做到.
当他们在一起时(例如2GB),我会测试每个角色,直到找到一个字母,而不是一个数字.
s='17GB'
number=''
unit=''
for c in s:
if c.isdigit():
number+=c
else:
unit+=c
Run Code Online (Sandbox Code Playgroud)
有没有更好的方法呢?
谢谢
c# ×3
.net ×2
asp.net ×2
security ×2
asp.net-mvc ×1
asynchronous ×1
c ×1
c++ ×1
css ×1
dictionary ×1
gdi ×1
hashcode ×1
html ×1
http ×1
python ×1
refresh ×1
secret-key ×1
sql-server ×1
string ×1
unmanaged ×1
vb.net ×1
wcf ×1
web-services ×1
winapi ×1
windows ×1
wrapper ×1