我对Web服务没有多少经验,但我认为我的网站服务很有用。
我的公司刚刚购买了.net版本的Cete Pdf Merger(很棒的产品顺便说一句)。我们同时使用.Net& asp代码,也可能在将来使用java。
场景是一种技术(asp,java,.net)将具有原始数据列表,例如字段名称和数组。值。此数据将发布到Web服务,然后打开给定的pdf,将pdf表单字段与字段名称数组匹配,获取相应的值,将其填充到pdf上,然后将pdf流回用户进行下载。
这看起来可行吗?任何陷阱我都可能碰到你知道的?任何首选的方法(Web服务,WCF,???)
答案 0 :(得分:2)
简答:WCF
更长的答案是:您似乎在区分WCF和“Web服务”。也许您正在考虑旧的“.asmx”Web服务。 Microsoft现在认为它们是“遗留软件”,并建议您使用WCF进行所有新的Web服务开发。
答案 1 :(得分:1)
如果您要使用.NET的Web服务,我建议使用WCF(Windows Communication Foundation)。
答案 2 :(得分:1)
WCF(MSDN)是一个不错的选择,但如果您想提供用户界面(例如输入字段值的HTML表单),您可以使用常规Web表单并发布到具有HTTP的页面,通过使用适当的MIME类型流式传输响应来返回PDF输出。
答案 3 :(得分:1)
这听起来像个好主意。您可以使用.asmx Web服务(其他人可能会看不起.asmx)。
建议像这样创建一个web方法:
(这个例子粗糙的边缘,但它只是描述一般的想法)
[WebMethod]
public void CreatePdfIncomeTax(IncomeTaxForm itf)
{
// integrate with Cete Pdf Merger
string fileName = SomePdfMerging(itf);
Response.ContentType = "application/pdf";
Response.AddHeader("Content-Disposition", "inline; filename=foo.pdf");
Response.WriteFile(path);
Response.Flush();
Response.End();
}
...
// a class that the caller would populate as param to the webmethod
public class IncomeTaxForm
{
public string FirstName {get;set;}
public string AddressLine1 {get;set;}
...
}
答案 4 :(得分:0)
我做了非常精确的事情,但使用Aspose作为PDF组件。我们使用的是.asmx网络服务,而不是我想要的WFC。我当然会同意其他所有人说WCF是要走的路。我知道我会更喜欢这个,但不幸的是,这个决定不是我的决定。