我有一个WCF服务,它使用X.509证书作为客户端凭据.大多数这些凭据不需要密码来使用它,只是为了安装它.
但是现在,我们的客户有一个证书,每次使用时都要输入密码(即每次服务运行时).此服务每天调用另一个服务n次,但如果无法验证证书则会失败.
到目前为止,我们已经要求我们的客户在每次遇到这个问题时订购(并支付)新证书,但我和我们的客户都厌倦了每次都要经历这个问题.我还没有使用自己的服务,并没有太多与WCF服务的经验.
我想知道的是:是否可以在配置文件中输入此密码以及有关证书的所有其他信息?
以下是该服务的XML配置的一部分:
<configuration>
<system.serviceModel>
<client>
<endpoint
address="***"
binding="basicHttpBinding"
bindingConfiguration="***"
behaviorConfiguration="HTTPSEndpoint"
contract="***"
name="***" />
</client>
<bindings>
<basicHttpBinding>
<binding
name="***"
sendTimeout="00:05:00"
maxBufferSize="2147483647"
maxReceivedMessageSize="2147483647" >
<readerQuotas maxStringContentLength="2147483647" />
<security mode="Transport">
<transport clientCredentialType="Certificate" />
</security>
</binding>
</basicHttpBinding>
</bindings>
<behaviors>
<endpointBehaviors>
<behavior name ="HTTPSEndpoint">
<clientCredentials>
<clientCertificate
findValue="***"
storeLocation="LocalMachine"
storeName="My"
x509FindType="FindBySubjectName"/>
</clientCredentials>
</behavior>
</endpointBehaviors>
</behaviors>
</system.serviceModel>
</configuration>
Run Code Online (Sandbox Code Playgroud) 我正在使用django-paypal,我想向我的用户收取€而不是$.我没有找到改变这种行为的方法(货币总是美元).但我非常确定有办法做到这一点.
经过一段时间的不活动后,第一个请求需要大约5到10秒才能通过.
有没有最佳实践解决方案来克服这个问题?
我正在使用Python版的App Engine.
在我自己动手并开始拔出字典之前,有没有人知道rubygem来生成适合app键的令人难忘的名字.我需要一些可说明的东西,以便我可以为用户提供唯一的电子邮件地址来提交内容.我喜欢Heroku的命名为它的应用程序作为一个例子.
floating-sky-58
simple-fog-45
Run Code Online (Sandbox Code Playgroud) 我是PHP的新手,但发现它非常有用.如何在PHP中编写以下语句:
如果body ID ="home",则插入一些html,例如
<h1>I am home!</h1>
Run Code Online (Sandbox Code Playgroud)
否则,插入此html:
<p>I'm not home.</p>
Run Code Online (Sandbox Code Playgroud)
谢谢!
我正在使用多行文本框,我得到的行为我无法完全解释.我用
textbox.AppendText("line \n");
Run Code Online (Sandbox Code Playgroud)
将新行附加到文本框.当使用这3次时,我得到了
line
line
line
Run Code Online (Sandbox Code Playgroud)
显示在文本框中.现在,我调整文本框的大小.文字变成了
line line line
Run Code Online (Sandbox Code Playgroud)
也就是说,新线消失了.我知道我应该用
textbox.AppendText("line "+ Environment.Newline);
Run Code Online (Sandbox Code Playgroud)
所以我知道如何解决这个问题.我想知道为什么,当使用"\n"时,新行最初出现,但在调整大小时消失.
我有一个非常简单的课程:
class Trace
{
void WriteTrace()
{
Console.WriteLine("Trace !");
}
}
Run Code Online (Sandbox Code Playgroud)
我希望这个类订阅一个事件,例如表单控件的load事件.控件和事件是动态定义的,所以我想使用反射来做到这一点我正在尝试这样的事情:
在我的类Trace我有这个方法:
public void SubscribeEvent (Control control)
{
if (type.IsAssignableFrom(control.GetType()))
{
Trace test = this;
MethodInfo method = typeof(Trace).GetMethod("WriteTrace");
// Subscribe to the event
EventInfo eventInfo = control.GetType().GetEvent("Load"); // We suppose control is a form
Delegate handler = Delegate.CreateDelegate(eventInfo.EventHandlerType, control, method); // ERROR : Error binding to target method
}
}
}
Run Code Online (Sandbox Code Playgroud)
最后一行出错:绑定到目标方法时出错.我的片段有什么问题?
谢谢 !
编辑:好的,没有更多的错误但是当从Form中引发事件"Load"时,方法WriteTrace没有被调用(我已经放置了一个断点,但没有到达).为什么?
对不起编辑,它工作得很好:)
首先,这不是一个多用户问题,因为我在本地数据库的开发版本上工作.
Row not found or changed当我执行db.SubmitChanges()时,我得到了不太明确的错误.如果我在SubmitChanges()发生之前中断执行,我可以检入SQL Server Management Studio并且该行确实存在!
这是整个函数的代码,只是为了让任何想要帮助的人在上下文中,但问题行最后是正确的(第48行).
更新这是一个非常奇怪的错误:错误是由更新matchingTrans.Url引起的(请参阅倒数第二行代码).注释掉这一行并不会引发错误 - 即使匹配的Trans.Title仍然得到更新.
private static void MenuItemUpdate(int languageId, NavigationItem item)
{
using (var db = DataContextFactory.Create<MyDataContext>())
{
// Select existing menu item from database.
var dbItem =
(from i in db.MenuItems
where i.Id == item.Id
select i).Single();
// Obtain ID of link type.
dbItem.FkLinkTypeId = GetLinkTypeByName(
Enum.GetName(typeof (NavigationItemLinkType), item.LinkType)).Id;
// Update the Link field with what is given.
dbItem.Link = item.Link;
db.SubmitChanges();
// Item already exists …Run Code Online (Sandbox Code Playgroud)