SQL Azure适用于桌面客户端应用程序 [英] Is SQL Azure suitable for Desktop client applications

查看:214
本文介绍了SQL Azure适用于桌面客户端应用程序的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个经营小企业的客户。他们需要一个自定义的数据库解决方案,我正在研究各种选项。我的经验仅限于使用本地SQL Server(无ASP.NET)的.NET,但是,该客户端是非技术性的,并且将受益于能够外包DBA任务。我是一个完整的Azure noob,我刚刚扫描教程,他们都以开发MVC ASP解决方案为目标。客户端不需要基于浏览器的解决方案。从不同地理位置使用的胖桌面客户端将是我可以提供的最便宜的选项。我只是想节省一些时间来完成所有的教程和文档,只是发现这不是SQL Azure打算做的。实际上,我的问题归结为:


  1. 我可以使用Entity Framework 4开发一个C#/ .NET WPF桌面应用程序,它攻击SQL Azure而不是本地SQL Server?


  2. 是否有任何已知的遇难与EF4和SQL Azure?


  3. 使用SQL-Azure而不是本地SQL Server有其他隐藏的开发成本/复杂性。


  4. 基本工具是否支持相同?一个具体的例子我可以想到我得到一个SQL分析工具进行故障排除?


  5. 最后一个问题是安全性相关,我不够复杂,不能提出一个很好的问题,但是以这种方式将SQL Azure数据分解为安全性没有?



解决方案


  1. 可以,但更合适的方法是使用WCF数据服务或其他形式的Web服务(asmx或WCF)作为应用程序的服务层。我喜欢这种业务应用程序的方法。我讨厌网络应用程序的业务线,并通过使用连接的WPF桌面应用程序的服务,您可以获得在云端运行的优势,并提供云服务,而无需基于HTML。


  2. SQL Azure现在完全支持EF。在过去有一些问题,但是我还没有遇到过这些日子。


  3. 在开发成本和复杂性方面 - Azure桌面托管环境是从发展的角度来看,PITA的位置,但我没有出现重大问题。您无法共享本地DEV SQL Server,除非您使用托管实例....当然有一个开发成本,因为您必须支付使用费用。


  4. 好点! SQL Azure目前不提供SQL Profiler支持。我个人使用了内置的EF跟踪支持功能。


  5. 从安全角度来看,直接暴露SQL Azure DB并不是一个好主意。这就是为什么我建议点1中的WCF数据服务(或其他Web服务)端点。



I have a client that runs a small business. They need a custom database solution and I'm looking into various options. My experience is limited to .NET using local SQL Servers (no ASP.NET), however, this client is non-technical and would benefit from being able to outsource the DBA tasks. I'm a complete Azure noob, I just scanned the tutorials and they all appear targeted at developing MVC ASP solutions. The client doesn't need a browser based solution. A fat desktop client used from different geographical offices would be the least expensive option I can deliver. I'm just trying to save some time going through all the tutorials and docs only to find out that this isn't what SQL Azure is intended to do. In effect my questions boil down to:

  1. Can I develop a C#/.NET WPF desktop application using Entity Framework 4 and have it hit SQL Azure instead of a local SQL Server?

  2. Are there any known gotchas with EF4 and SQL Azure?

  3. Are there other hidden development costs/complications in using SQL-Azure instead of a local SQL Server.

  4. Is the basic tool support the same? One specific example I can think of; do I get a SQL profiler tool for troubleshooting?

  5. The final question is security related and I'm not sophisticated enough to ask a good question, but is hitting a SQL Azure db this way considered a security no no?

解决方案

  1. Yes, you can, but a more suitable approach would be to use WCF Data Services or another form of web services (asmx or WCF) as a services layer for your application. I like this approach for line of business applications. I hate web apps for line of business and by using a services connected WPF desktop application, you get the benefits of running in the cloud and having a cloud offering without the necessity to be HTML based.

  2. SQL Azure has full support for EF these days. In the past there were some issues, but I have not encountered any these days.

  3. In terms of development costs and complications - the Azure desktop hosted environment is a bit of a PITA from a development perspective, but I haven't had major problems. You lose the ability to share a local DEV SQL Server unless you use a hosted instance....of course there's a development cost in that because you have to pay for usage.

  4. Good point! SQL Azure does not provide SQL Profiler support at present. I personally use the built in EF tracing support for this functionality.

  5. Exposing a SQL Azure DB directly isn't a good idea from a security perspective. That's why I suggest hitting a WCF Data Services (or other web services) endpoint in point 1.

这篇关于SQL Azure适用于桌面客户端应用程序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆