在即将开展的项目中,我们希望使用ASP.NET WebAPI 2向我们的网站和浏览器客户端公开服务功能.
由于我们希望尽可能少的"终点"尽可能地让所有呼叫,甚至"内部"从WebAPI Web服务中消耗我们的服务器.(即不只是直接新建控制器实例)
我正在寻找帮助生成或支持C#"客户端"的东西,它包装HTTPClient并提供强类型的"代理".与通过"添加新服务引用"生成代理时的WCF类似.
我已阅读问类似的事情(如所看到的其他问题HERE),但想请不相关的MVC或测试问题作出更为直接的问题.
是否有任何好的(和免费的)工具可用于分析静态源或运行程序以帮助检测内存泄漏?
我已经构建了一些Windows服务,并希望确保不会消耗内存,如果我让它们连续运行数周.
使用web.config转换,我想确保并在结果web.config的顶部包含注释,以指示使用哪个转换文件(配置)来生成它.
我没有看到从转换文件中包含注释的方法,可以这样做吗?
编辑:
似乎剥离了转换文件中的所有注释.
如果你必须设计一个文件处理组件/系统,它可以采用各种各样的文件格式(包括Excel等专有格式),解析/验证并将这些信息存储到数据库中......你会怎么做?
注意:95%的时间1行输入数据将等于数据库中的一条记录,但并非总是如此.
目前我正在使用一些我设计的自定义软件来解析/验证/存储客户数据到我们的数据库.系统按文件系统中的位置(从ftp drop)标识文件,然后加载XML"定义"文件.(根据输入文件的删除位置加载正确的XML).
XML指定文件布局(分隔或固定宽度)和字段特定项(长度,数据类型(数字,字母,字母数字)以及要将字段存储到的DB列).
<delimiter><![CDATA[ ]]></delimiter>
<numberOfItems>12</numberOfItems>
<dataItems>
<item>
<name>Member ID</name>
<type>any</type>
<minLength>0</minLength>
<maxLength>0</maxLength>
<validate>false</validate>
<customValidation/>
<dbColumn>MembershipID</dbColumn>
</item>
Run Code Online (Sandbox Code Playgroud)
由于这种设计,输入文件必须是文本(固定宽度或分隔),并且从输入文件数据字段到DB列具有1对1的关系.
我想扩展我们的文件处理系统的功能,以采用Excel或其他文件格式.
我至少有六种方法可以继续,但我现在卡住了,因为我没有任何人可以真正反省这些想法.
再说一遍:如果你必须设计一个文件处理组件,它可以采用各种各样的文件格式(包括Excel等专有格式),解析/验证并将这些信息存储到数据库中......你会怎么做?
我正在使用DirectContent方法在我的PDF上绝对定位元素.我需要迭代一个记录列表,并在我的PDF中为每个记录构建一个页面.
如何告诉itextsharp插入新页面并"绘制"到该页面?
// 72point per inch
// we want 7x10
iTextSharp.text.Rectangle pageSize = new iTextSharp.text.Rectangle(504, 720);
Document doc = new Document(pageSize);
PdfWriter writer = PdfWriter.GetInstance(doc, new FileStream(@"C:\temp\backPages.pdf", FileMode.Create));
doc.Open();
PdfContentByte cb = writer.DirectContent;
// "DRAW" IMAGES AND TEXT
...
//various .Add's called here
...
// Done with drawing images & text
doc.Close();
Run Code Online (Sandbox Code Playgroud) 我需要在新的应用程序中创建多个处理线程.每个线程都有可能"长时间运行".有人可以评论内置的.net线程池或一些现有的自定义线程池的可行性,以便在我的应用程序中使用吗?
要求 :
在Windows服务中运行良好.(排队的工作可以从队列中删除,当前正在运行的线程可以告诉停止)
能够启动多个线程.
工作需要按顺序启动,但多个线程可以并行处理.
可以检测并杀死挂起的线程.
编辑:
评论似乎导致手动线程化.不幸的是,我坚持使用3.5版本的框架.Threadpool很吸引人,因为它可以让我排队工作,并在资源可用时为我创建线程.是否有一个很好的3.5兼容模式(生产者/消费者)可以给我这个线程池方面而不实际使用线程池?
在我看来,课堂培训似乎为我们提供了技术构建块,但很少涵盖实际构建任何大型或复杂的东西,甚至当课堂培训涵盖"大型项目"时,您仍然只是获得正确的最终结果.
人们应该去哪里学习软件设计的更大方面?具体来说,在开始从事中型到大型项目/系统的工作时,人们可以去哪里学习实际的"最佳实践"?(理论更少,应用更多)
(我的重点是.NET和C#,但问题对任何技术都有效)