我仔细阅读了JSON描述http://json.org/,但我不确定我是否知道这个简单问题的答案.哪些字符串是最小可能的有效JSON?
"string"
字符串是有效的JSON吗?42
是简单的数字有效JSON?true
布尔值是有效的JSON吗?{}
空对象是有效的JSON吗?[]
空数组是一个有效的JSON吗?[ThreadStatic]
属性如何工作?我假设编译器会发出一些IL来填充/检索TLS中的值,但是看一下反汇编它似乎不会在那个级别上执行.
作为跟进,如果你把它放在非静态成员身上会发生什么?我们有一个开发人员犯了这个错误,编译器甚至没有提出警告.
更新
第二个问题在这里回答:使用Static C#修改ThreadStatic
因此,如果我必须在哈希表或前缀树之间进行选择,那么哪些区别因素会导致我选择一个而不是另一个.从我自己的天真的角度来看,似乎使用trie有一些额外的开销,因为它没有存储为数组但是就运行时而言(假设最长的键是最长的英语单词)它可以基本上是O (1)(就上限而言).也许最长的英文单词是50个字符?
获得索引后,哈希表会立即查找.然而,散列获得索引的关键似乎很容易接近50步.
有人能为我提供更有经验的观点吗?谢谢!
我一直在关注米格尔·卡斯特罗对WCF优秀文章在这里,这一切都工作很好,但我有以下代码
public AdminClient()
{
ChannelFactory<IProductAdmin> factory = new ChannelFactory<IProductAdmin>();
productAdminChannel = factory.CreateChannel();
}
Run Code Online (Sandbox Code Playgroud)
在我的app.config文件中,我有以下配置:
<system.serviceModel>
<client>
<endpoint address="net.tcp://localhost:8002/ProductBrowser"
binding="netTcpBinding"
contract="Contracts.IProductAdmin" />
</client>
</system.serviceModel>
Run Code Online (Sandbox Code Playgroud)
但是,当我运行AdminClient的构造函数时,我得到一个异常,说明端点没有定义.但是,如果我更改配置以给端点命名,然后按如下方式创建工厂,则它可以工作.
public AdminClient()
{
var fac = new ChannelFactory<IProductAdmin>("admin");
productAdminChannel = fac.CreateChannel();
}
Run Code Online (Sandbox Code Playgroud)
<system.serviceModel>
<client>
<endpoint name="admin"
address="net.tcp://localhost:8002/ProductBrowser"
binding="netTcpBinding"
contract="Contracts.IProductAdmin" />
</client>
</system.serviceModel>
Run Code Online (Sandbox Code Playgroud)
我喜欢这个的解释.MSDN中的文档没有太大帮助......
当我使用专有的html属性时,Syntastic的lint工具会不断警告我,这一点令人困惑,尤其是在使用Angular指令时.
这很快就淹没了我的html中的实际错误,减少了linter错误的值,并增加了视觉噪音.
无论如何要避免这种情况吗?
有没有办法获取Windows身份验证用户所在的角色列表,而无需通过WindowsPrincipal.IsInRole
方法明确检查?
好吧,这个问题很简单地用标题来说明.
对于局部变量factory
:
var factory = Fluently.Configure()
...
Run Code Online (Sandbox Code Playgroud)
这两行是否相同:
Bind<ISessionFactory>().ToConstant(factory).InSingletonScope();
Run Code Online (Sandbox Code Playgroud)
和:
Bind<ISessionFactory>().ToConstant(factory);
Run Code Online (Sandbox Code Playgroud) 我已经开始为FedEx的webservice API编写一个接口.他们有3种不同的API,我很感兴趣; 费率,发货和跟踪.我正在使用SvcUtil.exe生成服务代理.
FedEx在自己的WSDL文件中指定了不同的服务端点.每个服务端点都有自己的xml命名空间(例如http://fedex.com/ws/rate/v5和http://fedex.com/ws/ship/v5)
服务端点确实使用了相当多的相同类型,例如Address,Measurements,Weight,AuthenticationDetail,ClientDetail等......
这就是问题所在,我可以同时向SvcUtil.exe提供所有WSDL文件,通常它会将任何相同的类型合并为一个共享类型,但由于FedEx的每个服务都在它们自己的命名空间中,他们在该命名空间下的每个WSDL文件中重新声明这些类型,而不是每个命名空间的Address,Address1和Address2.
为了解决这个问题,我现在要做的是分别通过svcutil运行每个WSDL,并将它们分别放在自己的.NET命名空间中(例如FedEx.Rate,FedEx.Ship,FedEx.Track).这个问题是现在我在每个命名空间中都有一个不同的地址类型(Fedex.Rate.Address,FedEx.Ship.Address).
这使得很难概括像GetAuthenticationDetail()工厂方法之类的服务之间使用的代码,因此我不必在每个使用不同服务的地方重复该代码.
在C#中是否有任何方法可以将FedEx.Rate.Address强制转换为FedEx.Ship.Address?
在预定的时间间隔,我需要调用WCF服务异步调用另一个WCF服务.调度我已经解决的WCF服务调用.
我认为我需要的东西,我已经在stackoverflow上读到了必须...,(实质上)准备或更改WCF服务的代码,以便能够处理对它们的异步调用.如果是这样的话,那个简单的例子是什么样的?(也许是前后的例子)在.Net 3.5中还有必要吗?
其次我使用来自WCF服务的代理来执行对下一个WCF服务的调用,并且需要一个对WCF服务的异步调用的样本,如果它看起来与具有典型异步示例的BeginEnvoke和EndEnvoke的典型不同.
如果我对我的问题完全不满意,我会相信它,并且会感谢任何更正以建立更好的问题.
我有一个简单的ViewModel,如:
public class MainViewModel {
ObservableCollection<Project> _projects;
public MainViewModel() {
// Fill _projects from DB here...
ProjectList.Source = _projects;
ProjectList.Filter = ...;
}
public CollectionViewSource ProjectList { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我将窗口的DataContext设置为构造函数中该ViewModel的新实例:
public MainWindow() {
this.DataContext = new MainViewModel();
}
Run Code Online (Sandbox Code Playgroud)
然后在Xaml中,我试图将ListBox的ItemsSource绑定到该ProjectList属性.
像这样绑定ItemsSource是行不通的:
<ListBox ItemsSource="{Binding ProjectList}" ItemTemplate="..." />
Run Code Online (Sandbox Code Playgroud)
但是,如果我首先重新定义DataContext,它的工作原理如下:
<ListBox DataContext="{Binding ProjectList}" ItemsSource="{Binding}" ItemTemplate="..." />
Run Code Online (Sandbox Code Playgroud)
第一种方法不应该正常工作吗?我可能做错了什么?
c# ×4
.net ×2
wcf ×2
algorithm ×1
angularjs ×1
asynchronous ×1
binding ×1
coerce ×1
hashtable ×1
javascript ×1
json ×1
ninject ×1
rbac ×1
static ×1
syntastic ×1
threadstatic ×1
trie ×1
types ×1
validation ×1
vim ×1
web-services ×1
wpf ×1
xaml ×1