将T-SQL语句解析为标记

你可以在这里看到C#代码语句解析为令牌的好坏。 例如,以下代码: namespace MyNamespace { class MyClass { public void MyFunction(int arg1) { int var1 = arg1; } } } 被解析为: 我想做这样的事情,但用T-SQL语句代替。 例如,如果我有以下T-SQL语句: IIF(COALESCE([Col001], [Col002], [Col003]) > [Col004], [Col005] * [Col006] + ISNULL([Col007], [Col008]), CONCAT(SUBSTRING([Col009], 0, 3), ‘sample text’, [Col010])) 会给我这样的东西: IIF, COALESCE, ISNULL, CONCAT, SUBSTRING – functions [Col001], [Col002], … , [Col010] – columns […]

从ASMX调用基于任务的方法

我有一个最近的经验,我想分享这可能对任何必须维护必须更新以调用基于任务的方法的旧ASMX Web服务的人有所帮助。 我最近一直在更新一个ASP.NET 2.0项目,其中包括一个传统的ASMX Web服务到ASP.NET 4.5。 作为更新的一部分,我介绍了一个Web API接口,以允许应用程序的高级自动化。 ASMX服务必须与新API共存才能实现向后兼容。 该应用程序的一个function是能够代表呼叫者从外部数据源(工业工厂历史记录,定制Web服务等)请求数据。 作为升级的一部分,我重新编写了数据访问层的大部分内容,以使用基于任务的异步模式异步请求数据。 鉴于在ASMX服务中不可能使用aync / await,我修改了ASMX方法以对异步方法进行阻塞调用,即调用基于任务的方法,然后使用Task.WaitAll阻塞线程,直到任务完成。 当调用任何正在调用返回任务或任务的方法的ASMX方法时,我发现请求总是超时。 当我逐步完成代码时,我可以看到异步代码已成功执行,但对Task.WaitAll的调用从未检测到任务已完成。 这引起了一个令人头疼的问题:ASMX服务如何能够与新的异步数据访问function共存?

Nlog自定义layoutrenderer

任何人都可以为我提供一个非常样本的自定义layoutrenderer用于nlog? 举例来说,我希望在im log中进行缩进 如果我从方法C调用方法B 文本日志文件如下所示: Inside Method C Inside Method B 等等。

无法创建组件,因为它具有要满足的依赖性

我正在学习DDD,n-Tier,Repositoriess等。 有人把我指向ASP.NET Boilerplate,我决定用它开始一个测试项目。 我从来没有处理dependency injection,所以这对我来说都是新的,但它依赖于它使用ius Castle Windsor的DI依赖。 现在,我创建了一个模型,并从这个模型中创建了一个接口。 我还添加了一个服务。 每当我启动应用程序时,它都会给我这个错误: Can’t create component ‘TestApp.Services.MemberInfo.MemberAppService’ as it has dependencies to be satisfied. ‘TestApp.Services.MemberInfo.MemberAppService’ is waiting for the following dependencies: – Service ‘TestApp.Repositories.IMemberInfoRepository’ which was not registered. 我知道你必须注册服务等,但是阅读它在这里说的ABPs文档, http://www.aspnetboilerplate.com/Pages/Documents/Dependency-Injection#DocAbpInfrastructure ,如果你添加App,它们会自动注册到class级的名字。 基本上,这是我的代码: IMemberInfoRepository public interface IMemberInfoRepository : IRepository { } MemberAppService public class MemberAppService : IMemberAppService { private […]

在C#Winform上使用Show Dialog时非常奇怪的错误

我在VS Studio 2008 Express Edition中创建了2个表单,并在main program.cs文件中使用public static声明它们 我只是想用ShowDialog和Close在两个表单之间切换,但是当试图关闭第二个表单并再次使用showdialog打开第一个表单时,它表示当表单已经可见时我不能使用showDialog,而事实并非如此在显示第二个表格之前关闭它。 它让我在使用showdialog之前将form visible属性设置为false,所以我做到了 internal static void CloseSecondForm(FirstForm FirstForm) { FirstForm .Close(); SecondForm.Visible = false; SecondForm.ShowDialog(); } 但后来它说我不能使用ShowDialog,因为表格已经在对话模式中显示,我必须关闭它。 所以我做了它所要求的 internal static void CloseSecondForm(FirstForm FirstForm) { FirstForm .Close(); SecondForm.Visible = false; SecondForm.Close(); SecondForm.ShowDialog(); } 但它仍然假装已经使用ShowDialog打开了表单! 这是我的编程或Winform中的Bug吗? 更新:这是我在第5个答案中发布的整个代码(我想使用showdialog而不是show,因为我可能在后台有第3个表单,我不希望用户访问): [STAThread] static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Form1 = new Form1(); Form2 = […]

C#检测哪个显卡驱动video

我的C#应用​​程序位于具有Intel主板和图形芯片组的嵌入式盒子上。 ATI显卡已经上PCI Express。 通常显卡驱动video,但如果ATI卡出现故障,则video会从图形芯片组中传出。 我必须检测ATI显卡的故障以进行诊断。 有关如何执行此操作的任何想法/示例代码。 在此先感谢Raju

C#部署我的应用程序 – 仅从Web进行单击

所以我用C#开发了我的应用程序。 我准备好部署它。 我想做到这一点,以便用户总是从我的网站启动它(这样他们总是得到更新,没有安装等)。 ClickOnce是正确的方法吗? 我尝试将ClickOnce部署到我的服务器上并向我跳出一些东西: 1)用户可以选择运行设置或启动.application文件 – 有什么区别? 它不能自己检测到这个吗? 2)当我尝试“启动”.application时,它要求将其下载到我的计算机上。 无论如何只是直接从浏览器启动文件? 3)下载并运行.application文件后,出现以下消息时出现错误:“部署和应用程序没有匹配的安全区域。”

检查Selenium中是否存在元素

我想检查Selenium中是否存在元素,如果存在,则将其分配给名称。 现在我有一些看起来像这样的东西: IWebElement size9 = driver.FindElement(By.CssSelector(“a[data-value*=’09.0′]”)); 但是,如果不存在值为9的元素,则会返回错误。 有没有办法可以检查它是否存在,或者某种类似的东西?

ASP.NET自动注销

我和另外4个人一起做团队项目。 我们正在使用嵌入式c#在MVC4中设计ASP.NET中的作业信息亭。 我正在努力让系统在闲置10分钟后将用户注销。 我需要一些帮助来解决如何开始编写系统记录用户的方法。

Json.NET反序列化Mongo ObjectId给出了错误的结果

我正在使用官方的Mongo C#Driver和RestSharp用Json.NET调用Rest Api来执行序列化/反序列化。 假设我有一个Person类,如下所示,我想POST&GET: public class Person { [JsonProperty(“_id”),JsonConverter(typeof(ObjectIdConverter))] public ObjectId Id {get;set;} public string Name {get;set;} } 我创建一个新的Person对象: var person = new Person{Id = ObjectId.GenerateId(),Name=’Joe Bloggs’}; 发布它,在服务器上我看到以下是正确的: { _id: 52498b56904ee108c99fbe88, name: ‘Joe Bloggs’} 问题是,当我执行GET时,我在客户端上获得的ObjectId是{0000000000000 …},即不是{5249 …..}我期望的。 原始响应显示正确的值,但是一旦我反序列化,我就会松开它。 ObjectIdConverter代码是: public class ObjectIdConverter : JsonConverter { public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { […]