我现在已经使用Beta 2了一段时间,这让我疯狂,我必须在运行VS2010命令提示符时向cmd.exe发挥作用.我曾经为Visual Studio 2008提供了一个很好的vsvars2008.ps1脚本.任何人都有vsvars2010.ps1或类似的东西吗?
我正在考虑两个IRepository接口中的一个,一个是IQueryable的后代,另一个是IQueryable.
像这样:
public interface IRepository<T> : IQueryable<T>
{
T Save(T entity);
void Delete(T entity);
}
Run Code Online (Sandbox Code Playgroud)
或这个:
public interface IRepository<T>
{
T Save(T entity);
void Delete(T entity);
IQueryable<T> Query();
}
Run Code Online (Sandbox Code Playgroud)
LINQ用法是:
from dos
in ServiceLocator.Current.GetInstance<IRepository<DomainObject>>()
where dos.Id == id
select dos
Run Code Online (Sandbox Code Playgroud)
要么...
from dos
in ServiceLocator.Current.GetInstance<IRepository<DomainObject>>().Query
where dos.Id == id
select dos
Run Code Online (Sandbox Code Playgroud)
我有点像第一个,但是模拟是有问题的.其他人如何实现LINQable,可模拟的存储库?
有没有人使用微软的托管可扩展性框架(MEF)?有点听起来它试图成为所有人的所有事情 - 这是一个加载项管理器!这是鸭子打字!我想知道是否有人有经验,积极或消极.
我们目前正在计划为我们的下一个大项目使用通用的IoC实现ala MvcContrib.我们应该把混合物中的MEF扔掉吗?
我想创建一个具有多个触摸表面的应用程序,最好使用Metro/WinRT API.但是,我所阅读的大部分内容都表明Metro仅限于一台(主?)显示器.真的吗?
我想在Swift 2中创建一个函数,该函数从URL获取数据并使用NSURLSession将其作为JSON对象返回.起初,这看起来非常简单.我写了以下内容:
func getJson(url:NSURL, completeWith: (AnyObject?,NSURLResponse?,NSError?)->Void) -> NSURLSessionTask? {
let session = NSURLSession.sharedSession()
let task = session.dataTaskWithURL(url) {
(data:NSData?, response:NSURLResponse?, error:NSError?) -> Void in
if error != nil {
completeWith(nil, response, error)
}
if let data = data {
do {
let object:AnyObject? = try NSJSONSerialization.JSONObjectWithData(data, options: .AllowFragments)
} catch let caught as NSError {
completeWith(nil, response, caught)
}
completeWith(object, response, nil)
} else {
completeWith(nil, response, error)
}
}
return task
}
Run Code Online (Sandbox Code Playgroud)
但是,这不会编译,因为完成块不会声明"抛出".确切的错误是Cannot invoke 'dataTaskWithURL' with an argument …
给定任何特定的矩形(x1,y1) - (x2,y2),如何在其周边生成随机点?
我想出了一些方法,但似乎应该有一种非常规范的方法来实现它.
首先,我想我会在矩形内生成一个随机点并将其夹到最近的一侧,但分布看起来并不均匀(点几乎从不落在短边上).其次,我随机选了一个侧面然后在那边选择了一个随机点.代码有点笨拙而且也不统一 - 但是恰恰相反(短边有相同的机会获得积分作为长边).最后,我一直在考虑将矩形"展开"成一行并在线上选择一个随机点.我认为这会产生一个统一的分布,但我想在开始走这条路之前我会问这里.
我在Windows 2003/IIS 6计算机上设置了一个Mercurial服务器,当我尝试拉出存储库时,我得到以下序列
requesting all changes
adding changesets
adding manifests
adding file changes
transaction abort!
rollback completed
abort: premature EOF reading chunk (got 91303 bytes, expected 1542634)
Run Code Online (Sandbox Code Playgroud)
我已经尝试了几乎所有我能想到的东西,但没有成功.我按照Jeremy Skinners指南的步骤为IIS7执行此操作,但是在IIS6服务器上.
我发现了一个帖子,作者遇到了同样的问题,但无法找到解决方案.
到目前为止看起来解决方案是迁移到Apache或升级到Windows 2008/II7 ..但如果有人知道如何解决这个问题,请告诉我
我正在尝试创建一个读取某个地址值的程序.我有这个:
int _tmain(int argc, _TCHAR* argv[])
{
int *address;
address = (int*)0x00000021;
cout << *address;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
但这会产生读取违规错误.我究竟做错了什么?谢谢
我正在将一个复数器移植到Rust,我对正则表达式有一些困难.我无法Regex::replace()
像我期望的那样获得替换编号捕获组的方法.例如,以下显示空字符串:
let re = Regex::new("(m|l)ouse").unwrap();
println!("{}", re.replace("mouse", "$1ice"));
Run Code Online (Sandbox Code Playgroud)
我希望它可以打印"鼠标",就像在JavaScript(或Swift,Python,C#或Go)中一样
var re = RegExp("(m|l)ouse")
console.log("mouse".replace(re, "$1ice"))
Run Code Online (Sandbox Code Playgroud)
我应该使用Regex::replace()
哪种方法而不是?
检查Inflector包,我看到它提取第一个捕获组,然后将后缀附加到捕获的文本:
if let Some(c) = rule.captures(&non_plural_string) {
if let Some(c) = c.get(1) {
return format!("{}{}", c.as_str(), replace);
}
}
Run Code Online (Sandbox Code Playgroud)
但是,鉴于replace
我使用其他语言,我使用正则表达式,我希望它也适用于Rust.
使用 创建一个 blob 容器后CreateIfNotExists()
,我立即调用SetPermissions()
以允许用户公开访问容器中的 blob,但不允许访问容器本身。
像这样:
CloudBlobContainer pdfContainer = blobClient.GetContainerReference(ContainerName.PDFs);
if (pdfContainer.CreateIfNotExists())
pdfContainer.SetPermissions(new BlobContainerPermissions { PublicAccess = BlobContainerPublicAccessType.Blob });
Run Code Online (Sandbox Code Playgroud)
容器创建成功,但是当我登录到 Azure 门户时,blob 容器权限是Private
.
我是否错过了提交权限更改的额外调用?我看过的例子似乎都没有表明这一点,我也没有在文档中看到任何内容。我正在使用 Azure SDK 的 v2.0。
更新:
看起来CreateIfNotExists()
总是返回false。我在 Reflector 中打开了该程序集,发现它捕获了 (409) Conflict HTTP 错误并吞下了异常。这似乎是 SDK 或服务器端 REST 实现的问题。即使容器不存在并且容器创建成功,服务器仍然返回409。
似乎最好的办法是暂时调用CreateIfNotExists()
并忽略返回值。
此外,没有必要在调用GetPermissions()
之前调用SetPermissions()
。