我正在使用Visual Studio 2015更新3与托管在visualstudio.com上的TFS.当我在Visual Studio中的一个项目中添加C#类文件时,它不会自动添加到源代码管理中.对于同一解决方案中的其他项目,将按预期自动添加C#类文件.
当我在项目中手动添加文件时出现此问题,我得到以下问题;
我必须确认将文件添加到源代码管理.
有一个类似的问题(Visual Studio 2015新文件未自动添加到源代码控制中),与"发布"分支相关联,这不是这里的情况(至少我认为是这样 - 我们的TFS项目从未分支过)
我们从未手动配置任何.tfignore.这最近开始发生并且发生在所有开发机器上,因此它可能不是客户机问题.
我很无能,所以任何帮助都非常感谢.
我发现问题出现在名称以".Lib"结尾的项目中
项目:
我试图在Test.Lib我的解决方案中添加一个测试项目.这个项目也没有添加到TFS,但项目Test是.
我们花了相当长的时间来找出以下异常的原因:
The remote server returned an error: (403) Forbidden.
Run Code Online (Sandbox Code Playgroud)
堆栈跟踪:
at Microsoft.WindowsAzure.Storage.Core.Executor.Executor.ExecuteSync[T](RESTCommand`1 cmd, IRetryPolicy policy, OperationContext operationContext)
in c:\\Program Files (x86)\\Jenkins\\workspace\\release_dotnet_master\\Lib\\ClassLibraryCommon\\Core\\Executor\\Executor.cs:line 604
at Microsoft.WindowsAzure.Storage.Blob.CloudBlobContainer.Create(BlobContainerPublicAccessType accessType, BlobRequestOptions requestOptions, OperationContext operationContext)
in c:\\Program Files (x86)\\Jenkins\\workspace\\release_dotnet_master\\Lib\\ClassLibraryCommon\\Blob\\CloudBlobContainer.cs:line 68
at Microsoft.WindowsAzure.Storage.Blob.CloudBlobContainer.CreateIfNotExists(BlobContainerPublicAccessType accessType, BlobRequestOptions requestOptions, OperationContext operationContext)
in c:\\Program Files (x86)\\Jenkins\\workspace\\release_dotnet_master\\Lib\\ClassLibraryCommon\\Blob\\CloudBlobContainer.cs:line 233
at Microsoft.WindowsAzure.Storage.Blob.CloudBlobContainer.CreateIfNotExists(BlobRequestOptions requestOptions, OperationContext operationContext)
in c:\\Program Files (x86)\\Jenkins\\workspace\\release_dotnet_master\\Lib\\ClassLibraryCommon\\Blob\\CloudBlobContainer.cs:line 196
...The rest is removed for clearity...
Run Code Online (Sandbox Code Playgroud)
作为最后的手段,我们将App-service环境设置从32位(似乎是默认值)更改为64位,问题得以解决.没有更多的禁止例外.
我们仍然不知道为什么32位应该导致异常.有人知道为什么吗?很高兴知道.
更新
我们解决方案中的程序集编译为.NET 4.6.1 /任何CPU
我们的一些理论
我正在使用Visual Studio Enterprise 2015更新3(内部版本14.0.25424.00)。当我加载一个相对较大的解决方案并且所有项目都已加载时,将出现一个调试器对话框,其中显示“验证断点位置..:”。
验证断点位置的过程永远不会结束。如果按“取消”按钮,则IDE将完全冻结,因此必须终止devenv过程。
我已经尝试过了,devenv /ResetSettings但是没有帮助。
我的解决方案包含20多个类库项目,两个Web项目(使用node / gulp)
还有其他人经历过吗?有什么办法吗?
当 T-SQL proc 引发错误 (SQLException) 时,我遇到以下代码问题
var result = await conn.QueryMultipleAsync("Inventory.uspLoadItems", new
{
dbId = obj.myId,
},
commandType: CommandType.StoredProcedure);
var items = await result.ReadAsync();
var specificItems = MyCustomMapper.MapTo<MyItem>((dynamic)items);
Run Code Online (Sandbox Code Playgroud)
我正在使用 Dapper 版本 1.50.2。
该过程被抛入一个未观察到的异常中。
我可以一直跟踪异常直到 WebApi 控制器方法。 但是当控制器方法存在时,(由于我误解了 Parallell Stack 窗口中的信息,文本被删除。ReadAsync 处的异常失败,而不是 QueryMultipleAsync,因此在异常之后没有继续)。看起来像 Dapper 中的线程问题,但我不确定。var items = await items.ReadAsync();即使 WebApi 会话已终止(GC 收集?),另一个(生成和未完成的)线程仍会继续执行。
更新
我发现 Microsoft Connect 上的以下链接似乎与此主题高度相关。 https://connect.microsoft.com/VisualStudio/feedback/details/2592987/sqldatareader-nextresultasync-causes-unobserved-task-exception-even-when-awaited
所以,对于任何经历过这种行为的人。您将不得不等待下一次 .NET 更新。
不是 Dapper 的问题,但如果 Dapper 的贡献者能找到一个临时的解决方法,那就太好了 :)
现在,我将所有 ReadAsync 更改为 Read(同步)以避免此 SqlDataReader 错误。
我的服务器代码中有很多异步方法,但我怀疑我有没有等待的调用者.
是否有一种简单的方法来扫描缺少await的调用的代码?
public async Task DomeSomethingAsync()
{
var result = await GetResult();
await StoreResult(result);
}
Run Code Online (Sandbox Code Playgroud)
然后某个地方我忘了使用等待;
public async Task SomeBuggyCode()
{
await Initialize();
DoSomethingAsync(); // DOH - Forgot await
}
Run Code Online (Sandbox Code Playgroud)
我希望有一种聪明的方法可以识别这些错误的调用.
是否可以使用存储在 Azure Key Vault 中的 X509 证书创建 RSA-SHA1 签名?【不可否认证明】
不幸的是,我无法将哈希算法更改为 SHA256 或更安全的算法,而且我确实需要将证书作为密钥存储在 Azure Key Vault 中。
到目前为止我已经尝试过
await kvClient.SignAsync(keyVaultUrl, "RSNULL", digest); // digest = 20byte SHA1
await kvClient.SignAsync(keyVaultUrl, "RSNULL", ans1Digest); // asn1Digest = 35byte SHA1 wrapped in ANS1 structure
Run Code Online (Sandbox Code Playgroud)
签名长度似乎是正确的(256 字节),但验证失败(在正确实现签名验证实现的节点上)。
我还尝试像这样手动实现签名算法(使用keyVault.EncryptAsync):
我一定做错了什么。不确定是否需要所有步骤。
如果微软的任何人读到这个。即使 SHA1 签名不被认为是安全的,你能实现它吗?漂亮,请在上面加糖:-)
我有一个转换器方法:
MyPoco Convert(dynamic p) => new MyPoco { A = p.X, B = p.Y };
void Test()
{
dynamic item = new { X = 1, Y = 2 };
var poco = (MyPoco)Convert(item);
}
Run Code Online (Sandbox Code Playgroud)
我必须将结果显式转换为 MyPoco,否则 poco 也将成为动态变量。
但是,如果我内联 Convert 方法;
void Test()
{
MyPoco Convert(dynamic p) => new MyPoco { A = p.X, B = p.Y };
dynamic item = new { X = 1, Y = 2 };
var poco = Convert(item);
}
Run Code Online (Sandbox Code Playgroud)
我不需要将 ConvertItem 转换为 MyPoco。这种行为有原因吗?编译器应该很容易知道Convert返回类型是MyPoco,对吧?
问题严格与 TypeScript 有关。如果我在 Cocos Creator 中有基于 JavaScript 的 Cocos 项目,那么我遇到的问题就完美无缺。
我在名为 enums 的文件中有以下枚举。
export const enum CollisionType {
Static= 0,
Dynamic= 1,
Solid= 2,
SemiSolid= 3
}
Run Code Online (Sandbox Code Playgroud)
在我的 game.ts 文件中,我有以下内容
import {CollisionType} from "./Enums";
export default class PlayerControl extends cc.Component {
@property (CollisionType)
collisionType:CollisionType = CollisionType.Static;
Run Code Online (Sandbox Code Playgroud)
但不幸的是,这不起作用。我在 CollisionType 下看到一条红线,并出现以下错误:
Argument of type 'typeof CollisionType' is not assignable to parameter of type 'string | number | boolean | Function | any[] | { type?: any; visible?: boolean | (() => boolean); …Run Code Online (Sandbox Code Playgroud) c# ×5
.net ×4
asp.net ×1
async-await ×1
asynchronous ×1
azure ×1
c#-7.0 ×1
cocoscreator ×1
dapper ×1
dynamic ×1
freeze ×1
ide ×1
rsa ×1
sha1 ×1
tfs ×1
tfs-2015 ×1
typescript ×1