创建JSON Web服务的最佳方法是什么?我们有另一个使用Java的团队,他们坚持使用JSON完成所有通信.我更愿意使用WCF而不是任何第三方框架.
我发现这个博客:http://www.west-wind.com/weblog/posts/164419.aspx,它表明微软的实现存在M $特定废话的缺陷.
从文档提升来看,似乎为正态分布和伽玛分布提供了分位数函数(逆cdf函数),但我不清楚如何实际使用它们.有人可以贴一个例子吗?
我试图List<T>在F#中创建一个标准的.NET ,如下所示:
module Csv
open System;
type Sheet () =
let rows = new List<Object>()
Run Code Online (Sandbox Code Playgroud)
但是我收到以下错误:
没有类型的构造函数
List<Object>
C:\…\Csv.fs:6
我究竟做错了什么?
我已经部署了我的Windows服务(使用独立的安装程序类和SC.EXE),但是当我尝试启动它时出现错误:
---------------------------
Services
---------------------------
Could not start the MyName service on Local Computer.
Error 1053: The service did not respond to the start or control request in a timely fashion.
Run Code Online (Sandbox Code Playgroud)
什么是超时?感觉就像大约3秒钟.如果我的服务需要更长时间,我该怎么办?
我有一个安装程序类使用ServiceProcessInstaller.在构造函数的installer类中,我将它添加到安装程序:
serviceProcessInstaller = new ServiceProcessInstaller();
serviceInstaller = new ServiceInstaller();
// Add Both Installers to Project Installers Collection to be Run
Installers.AddRange(new Installer[]
{
serviceProcessInstaller,
serviceInstaller
});
Run Code Online (Sandbox Code Playgroud)
在Install方法中我设置了用户名和密码:
public override void Install(IDictionary stateSaver)
{
.... open the form, bla bla bla
serviceProcessInstaller.Password = accountForm.txtPassword.Text;
serviceProcessInstaller.Username = accountForm.txtServiceAccount.Text;
serviceProcessInstaller.Account = ServiceAccount.User;
}
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试运行它时,我得到了描述性错误消息:"帐户名和安全ID之间没有映射".我究竟做错了什么?
编辑:我测试只有当我使用msi包安装此组件时才会发生此错误.当我对它运行InstallUtil时,它工作得很好.
我正在编写一个小实用程序来计算复杂的数学公式(使用commons-math库进行集成和根查找).我试图以与普通业务应用程序相同的方式编写它,但是我发现我的类正在快速增加.为了得到计算的第一步(1行公式有2个积分),我已经为计算的每一小部分写了3个类,这样我就可以使用依赖注入并正确地模拟所有对commons-math的调用.虽然它有点失控,但我最终会遇到20个类,这个问题可以在一个类中的2个屏幕上解决(没有单元测试).你最喜欢的方法是什么?我非常想要仅仅依靠接受和更高级别的测试.
我有一个.Net服务,可以在每次请求时连接到Oracle数据库.它在开始时工作正常,但在我开始得到一些请求之后:
Oracle.DataAccess.Client.OracleException ORA-03135: connection lost contact
at Oracle.DataAccess.Client.OracleException.HandleErrorHelper(Int32 errCode, OracleConnection conn, IntPtr opsErrCtx, OpoSqlValCtx* pOpoSqlValCtx, Object src, String procedure)
at Oracle.DataAccess.Client.OracleException.HandleError(Int32 errCode, OracleConnection conn, String procedure, IntPtr opsErrCtx, OpoSqlValCtx* pOpoSqlValCtx, Object src)
at Oracle.DataAccess.Client.OracleCommand.ExecuteReader(Boolean requery, Boolean fillRequest, CommandBehavior behavior)
at Oracle.DataAccess.Client.OracleCommand.ExecuteReader()
at MyApp.Services.OracleConnectionWithRetry.ExecuteReader(OracleCommand command)
...
Run Code Online (Sandbox Code Playgroud)
知道可能是什么问题吗?我处理所有连接,结果和参数.这项服务的负担非常低.
我知道这个问题已被问过gzillions次,但我特意在一个能够正确处理枚举的反编译器之后(因为我反编译的jar使用了很多枚举).我测试过JAD和JD-GUI都没有.
有人可以推荐一个反编译器(理想情况下,它可以在Linux下运行,并且可以轻松处理整个jar而不需要我编写shell脚本)?
编辑:具体来说,我有以下结构的问题:
switch(myEnum) {
case A: ...
case B: ...
}
Run Code Online (Sandbox Code Playgroud)
他们被反编译(对于JAD和JD-GUI)如下所示:
switch ($SWITCH_TABLE$com$MyType()[myEnum.ordinal()]) {
case 1:
case 2:
}
Run Code Online (Sandbox Code Playgroud)
哪里$SWITCH_TABLE$com$MyType()要么根本没有声明要么没有编译.
我认为我对普通(功能)设计模式有相当多的经验,例如在四本一书中所描述的,我主要在java和C#中使用.在这些"托管"语言中,这几乎是您完成工作所需要知道的一切.
然而,在C++的世界开发者还拥有所有的对象是如何被分配,传来传去,并删除了控制.我理解这些原则(我在其他文本中读过Stroutrup),但是我仍然需要花费很多精力来决定哪种机制最适合给定的场景 - 这就是一系列与内存相关的设计模式会很有用的地方.
例如,昨天我不得不创建一个类Results,它是几个对象的容器和另一种类型的对象的集合(在本例中为std :: vector).所以有一些我无法回答的设计问题:
当然,智能指针很酷而且没有,但是它们会产生语法混乱,我不相信对每个对象使用malloc是否是最佳方法.
我将非常感谢上述具体要点的答案,但对于与记忆相关的设计模式的一些更长和更一般的文本更是如此 - 这样我就可以解决周一我将遇到的问题!
我有以下方法:
void MyMethod(params object[] args)
{
}
Run Code Online (Sandbox Code Playgroud)
我试图用类型的参数调用object[]:
object[] myArgs = GetArgs();
MyMethod(myArgs);
Run Code Online (Sandbox Code Playgroud)
它编译很好,但在MyMethod我内部args == { myArgs},即一个数组,其中一个元素是我的原始参数.显然我想拥有args = myArgs,我做错了什么?
编辑:
Jon Skeet实际上是对的,GetArgs()确实将事物包装在一个元素数组中,对不起愚蠢的问题.