我正在努力实现这个休息api:
public async Task<bool> AddTimetracking(Issue issue, int spentTime)
{
// POST /rest/issue/{issue}/timetracking/workitem
var workItem = new WorkItem(spentTime, DateTime.Now);
var httpContent = new StringContent(workItem.XDocument.ToString());
var requestUri = string.Format("{0}{1}issue/{2}/timetracking/workitem", url, YoutrackRestUrl, issue.Id);
var respone = await httpClient.PostAsync(requestUri, httpContent);
if (!respone.IsSuccessStatusCode)
{
throw new InvalidUriException(string.Format("Invalid uri: {0}", requestUri));
}
return respone.IsSuccessStatusCode;
}
Run Code Online (Sandbox Code Playgroud)
workItem.XDocument 包含以下元素:
<workItem>
<date>1408566000</date>
<duration>40</duration>
<desciption>test</desciption>
</workItem>
Run Code Online (Sandbox Code Playgroud)
我从API收到错误: Unsupported Media Type
我真的不知道如何解决这个问题,非常感谢帮助.如何使用HTTP POST URI 编组 XML文件HttpClient?
我一直在解决这个问题,但现在我真的想了解出了什么问题.我有一个相当简单的应用程序(它是youtrack的turtoise SVN插件,但我可以用一个简单的winforms应用程序重现这个问题).
我有一个异步方法 ResolveIssue
public async Task<bool> ResolveIssue(Issue issue, int revision, string[] pathList)
{
await Task.Delay(1000);
return true;
}
Run Code Online (Sandbox Code Playgroud)
创建死锁所需要做的就是在Button事件处理程序中调用此异步方法,并调用Task.Wait或者Task.Result像这样
private void buttonOk_Click(object sender, System.EventArgs e)
{
var asyncResolvedIssue = api.ResolveIssue(issue, revision, pathList);
if (asyncResolvedIssue.Result) {} // <== deadlock!
}
Run Code Online (Sandbox Code Playgroud)
现在我明白拥有异步方法并主动等待它是相当奇怪的,但为什么会产生死锁?!
我很想知道这一点,但从未真正找到答案.
我知道这是任务调度程序的一个提示,任务调度程序将在其中运行,并且任务调度程序可以(或现在将?)决定为该任务实例化非线程池线程.
我不知道(并且令人惊讶地在互联网上找不到)是一个"经验法则"何时指定一个长期运行的任务.是一秒多长?30秒?一分钟?5分钟?它是否与应用程序使用的任务量有关系?作为程序员,我应该使用线程池中的#threads进行一些计算,我创建了多少个任务,同时长时间运行了多少个任务,并根据这个来决定是否使用长时间运行的任务?
希望在这里学点东西.
这是一个相当大的话题,blobs vs tables vs SQL,尽管我到目前为止所阅读的内容还是找不到适当的推理.
我们有一个多租户SaaS Web应用程序,我们即将迁移到Azure.我们使用SQL Server 2008数据库.我们存储属于文档的文档和日志信息.有点像Dropbox.
论坛声明,在考虑"大型"对象时,最好使用Azure表.我们通常每个用户存储数百个文档,文档大小从5kb到30mb不等,绝大多数都在1MB左右?
什么时候去Blob,Tables,Sql有什么基本规则?我已经知道我不应该将文档存储在SQL中,因为它太贵了.但是什么时候将文件存储在Blob中变得"有益",何时我会更好地使用表格?是否有某种公式如:
if (objects * MB/object * objectrequested > y) then blobs, else tables
azure azure-storage-blobs azure-table-storage azure-sql-database
我正在尝试升级Unity到版本(2.1.505.2),但是当我运行应用程序时,我得到以下内容FileLoadException
无法加载文件或程序集"Microsoft.Practices.Unity,Version = 2.0.414.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35"或其依赖项之一.
我们正在从Unity 2.0.414.0升级到2.1.505.2.
gacutil -l)我从存档中删除了所有Unity dll.用powershell双重检查
PS C:\> ls -rec -inc Microsoft.Practices.Unity.dll | foreach-object { "{0}`t{1}" -f $_.FullName, [System.Diagnostics.FileVersionInfo]::GetVersionInfo($_).FileVersion }
Run Code Online (Sandbox Code Playgroud)如何找出仍然引用Unity 2.0.414.0的内容?
FusionLogVw没有告诉我哪个DLL导致了这个问题.
任何帮助深表感谢!
几天来,我一直在努力从存储库(DbContext)中检索我的实体.
我试图在原子动作中保存所有实体.因此,不同的实体一起代表了我的一些有价值的东西.如果所有实体都是"有效",那么我可以将它们全部保存到数据库中.实体"a"已存储在我的存储库中,需要检索以"验证"实体"b".
这就是问题出现的地方.我的存储库依赖于DbSet<TEntity>与Linq2Sql一起工作的类(Include()例如导航属性).但是,DbSet<TEntity>它不包含处于"已添加"状态的实体.
所以我(据我所知)有两个选择:
ChangeTracker以查看哪些实体可用,并根据它们将它们查询到一个集合中EntityState.DbSet<TEntity>.Local属性.这ChangeTracker似乎涉及一些额外的努力工作,以使我可以使用Linq2Sql Include()导航属性,例如
在DbSet<TEntity>.Local似乎有点怪我.它可能只是名字.我只是读了一些表现不佳的东西(比DbSet <>本身慢).不确定这是否是虚假陈述.
具有重要EntityFramework经验的人能否对此有所启发?什么是"明智"的道路?或者我看到了幽灵,我应该总是使用这个.Local属性吗?
使用代码示例更新:
public void AddAndRetrieveUncommittedTenant()
{
_tenantRepository = new TenantRepository(new TenantApplicationTestContext());
const string tenantName = "testtenant";
// Create the tenant, but not call `SaveChanges` yet until all entities are validated
_tenantRepository.Create(tenantName);
//
// Some other code
//
var tenant = _tenantRepository.GetTenants().FirstOrDefault(entity => entity.Name.Equals(tenantName));
// The tenant will …Run Code Online (Sandbox Code Playgroud) 我试图解决一个嘲讽的问题,通过创建IDbSet自定义模拟.
自定义模拟:
public class DbSetMock : IDbSet<Tenant>
{
/* hidden all other implemented methods/properties */
public TDerivedEntity Create<TDerivedEntity>() where TDerivedEntity : class, Tenant
{
throw new NotImplementedException();
}
}
Run Code Online (Sandbox Code Playgroud)
create方法给出了一个构建错误,我不知道如何解决:
不能同时指定约束类和'class'或'struct'约束
简单地class从约束中删除会导致另一个构建错误(我也不明白:()).
方法'Tests.DAL.Tenants.DbSetMock.Create <TDerivedEntity>()'的类型参数'TDerivedEntity'的约束必须与接口方法'System.Data.Entity.IDbSet <BusinessLayer'的类型参数'TDerivedEntity'的约束匹配. DAL.Tenants.Tenant> .Create <TDerivedEntity>()".请考虑使用显式接口实现.
有人可以帮我成功建立这门课吗?
我有一个创建多个任务的循环,如下所示.每个任务完成后,如何更新屏幕(使用某些数据向文本框添加新行)?
如何检测所有任务何时完成?
C#代码
for (int i = 0; i < int.Parse(radTextBoxFloodRequests.Text); i++)
{
int x = i;
// Create a task and supply a user delegate by using a lambda expression.
var taskA = new Task(() => TaskRequest(int.Parse(radTextBoxFirstNumber.Text), int.Parse(radTextBoxSecondNumber.Text), int.Parse(radTextBoxFloodDelay.Text), x));
// Start the task.
taskA.Start();
}
private void TaskRequest(int number1, int number2, int delay, int count)
{
// Some long running method
}
Run Code Online (Sandbox Code Playgroud) 我怎样才能定义TextBlock为FontStyle是勇敢的,通过Binding一个bool?
<TextBlock
Text="{Binding Name}"
FontStyle="???">
Run Code Online (Sandbox Code Playgroud)
我真的很想把它绑定
public bool NewEpisodesAvailable
{
get { return _newEpisodesAvailable; }
set
{
_newEpisodesAvailable = value;
OnPropertyChanged();
}
}
Run Code Online (Sandbox Code Playgroud)
有没有办法实现这一点,或者我的Model属性应该为我做翻译,而不是直接呈现bool礼物FontStyle?
c# ×8
task ×2
async-await ×1
azure ×1
binding ×1
dbcontext ×1
dbset ×1
deadlock ×1
generics ×1
httpclient ×1
post ×1
rider ×1
threadpool ×1
wpf ×1