企业级应用开发silverlight+WCF+orcle 11g开发
2013-08-28 10:00
253 查看
企业级应用开发silverlight+WCF+orcle 11g开发
1.环境准备
开发环境VS2010,silverlight4.0(下载安装SDK),windows 2008 R2版(配置添加IIS),oracle 11g
2.用ADO.NET实体框架访问数据库。
下载:Oracle Data Provider for .NET驱动程序。
程序包:ODTwithODAC112021.zip
地址:http://www.oracle.com/technetwork/topics/dotnet/index-085163.html
3.VS2010建立解决方案项目如图:
Client 客户端项目
Lib 第三方组件
Server 服务器端项目包括WCF
4.关键点
添加文件如图:
1)ADO实体框架连接oracle 11g,生成实体模型。自动生成操作数据库代码(增,删,改,查)
2)添加文件WcfDataServiceNodesInfo.svc封装成WCF服务
using System;
using System.Collections.Generic;
using System.Data.Services;
using System.Data.Services.Common;
using System.Linq;
using System.ServiceModel.Web;
using System.Web;
namespace SLAppTopMap.Web
{
public class WcfDataServiceNodesInfo : DataService<NodeDbInfoEntities>
{
// 仅调用此方法一次以初始化涉及服务范围的策略。
public static void InitializeService(DataServiceConfiguration config)
{
// TODO: 设置规则以指明哪些实体集和服务操作是可见的、可更新的,等等。
// 示例:
// config.SetEntitySetAccessRule("MyEntityset", EntitySetRights.AllRead);
config.SetEntitySetAccessRule("*", EntitySetRights.All);
//config.DataServiceBehavior.MaxProtocolVersion = DataServiceProtocolVersion.V2;
}
}
}
3)silverlight添加服务引用,自动生成客户端异步调用WCF代码。异步调用WCF。
关键代码:
NodeDbInfoEntities server =null;
void MainPage_Loaded(object sender, RoutedEventArgs e)
{
Uri url = new Uri("http://10.64.8.45:8006/TopMap/WcfDataServiceNodesInfo.svc/");
Uri urlE = new Uri("http://10.64.8.45:8006/TopMap/WcfDataServiceNodesInfo.svc/NODEINFO");
server = new NodeDbInfoEntities(url);
server.BeginExecute<NODEINFO>(urlE, new AsyncCallback(executed), null);
...
}
void executed(IAsyncResult obj)
{
var tp = server.EndExecute<NODEINFO>(obj);
...
}
5.部署将WCF部署到IIS中。
1)WCF跨域问题。
2)建立应用程序池选用.net框架经典模式。
3)允许开启asp.net访问模式
4)目录权限
5)有时候会遇到开发时能访问数据库,部署到IIS后WCF连接不到数据库。这一点很重要,网上很少有说的。很多人为此而困惑。
解决方法:找到Oracle Data Provider for .NET驱动程序安装目录。windows 2008 R2版是64位,注册对应的组件即可。
组件默认目录:C:\app\Administrator\product\12.1.0\client_1\odp.net\managed\x64
运行:OraProvCfg.exe注册组件。
更多部署注意事项参见:
Silverlight开发企业级应用之部署问题注意事项(18)
http://blog.csdn.net/zhaoyu008/article/details/7758957
1.环境准备
开发环境VS2010,silverlight4.0(下载安装SDK),windows 2008 R2版(配置添加IIS),oracle 11g
2.用ADO.NET实体框架访问数据库。
下载:Oracle Data Provider for .NET驱动程序。
程序包:ODTwithODAC112021.zip
地址:http://www.oracle.com/technetwork/topics/dotnet/index-085163.html
3.VS2010建立解决方案项目如图:
Client 客户端项目
Lib 第三方组件
Server 服务器端项目包括WCF
4.关键点
添加文件如图:
1)ADO实体框架连接oracle 11g,生成实体模型。自动生成操作数据库代码(增,删,改,查)
2)添加文件WcfDataServiceNodesInfo.svc封装成WCF服务
using System;
using System.Collections.Generic;
using System.Data.Services;
using System.Data.Services.Common;
using System.Linq;
using System.ServiceModel.Web;
using System.Web;
namespace SLAppTopMap.Web
{
public class WcfDataServiceNodesInfo : DataService<NodeDbInfoEntities>
{
// 仅调用此方法一次以初始化涉及服务范围的策略。
public static void InitializeService(DataServiceConfiguration config)
{
// TODO: 设置规则以指明哪些实体集和服务操作是可见的、可更新的,等等。
// 示例:
// config.SetEntitySetAccessRule("MyEntityset", EntitySetRights.AllRead);
config.SetEntitySetAccessRule("*", EntitySetRights.All);
//config.DataServiceBehavior.MaxProtocolVersion = DataServiceProtocolVersion.V2;
}
}
}
3)silverlight添加服务引用,自动生成客户端异步调用WCF代码。异步调用WCF。
关键代码:
NodeDbInfoEntities server =null;
void MainPage_Loaded(object sender, RoutedEventArgs e)
{
Uri url = new Uri("http://10.64.8.45:8006/TopMap/WcfDataServiceNodesInfo.svc/");
Uri urlE = new Uri("http://10.64.8.45:8006/TopMap/WcfDataServiceNodesInfo.svc/NODEINFO");
server = new NodeDbInfoEntities(url);
server.BeginExecute<NODEINFO>(urlE, new AsyncCallback(executed), null);
...
}
void executed(IAsyncResult obj)
{
var tp = server.EndExecute<NODEINFO>(obj);
...
}
5.部署将WCF部署到IIS中。
1)WCF跨域问题。
2)建立应用程序池选用.net框架经典模式。
3)允许开启asp.net访问模式
4)目录权限
5)有时候会遇到开发时能访问数据库,部署到IIS后WCF连接不到数据库。这一点很重要,网上很少有说的。很多人为此而困惑。
解决方法:找到Oracle Data Provider for .NET驱动程序安装目录。windows 2008 R2版是64位,注册对应的组件即可。
组件默认目录:C:\app\Administrator\product\12.1.0\client_1\odp.net\managed\x64
运行:OraProvCfg.exe注册组件。
更多部署注意事项参见:
Silverlight开发企业级应用之部署问题注意事项(18)
http://blog.csdn.net/zhaoyu008/article/details/7758957
相关文章推荐
- 微软silverlight3发布,亲身参与和微软合作开发全国首例Silverlight企业级应用,受益匪浅
- Silverlight开发企业级应用之部署问题注意事项(18)
- 基于Silverlight+RIA WCF+Sql Server2008的企业级架构及应用(19)
- 基于DotNet构件技术的企业级敏捷软件开发平台 - AgileEAS.NET平台开发指南 - 应用部署
- 【转载】Silverlight 应用 WCF RIA Services 在 IIS6 部署问题总结
- 在Silverlight+WCF中应用以角色为基础的安全模式(一)基础篇之角色为基础的安全模式简介
- 基于 Quartz 开发企业级任务调度应用
- 如何快速开发Java RCP企业级应用?
- Silverlight企业应用快速开发平台框架设计(三)分析-页面模型
- 使用JPA+Spring2.0+EasyJWeb开发企业级应用
- 使用Entity Framework和WCF Ria Services开发SilverLight之2:POCO
- 使用Entity Framework和WCF Ria Services开发SilverLight之5:客户端主外键联表查询
- 面向领域驱动的企业级应用开发框架Apworks新版本发布
- 面向领域驱动的企业级应用开发框架Apworks新版本发布
- Silverlight企业级应用 -- BPM / 工作流 深圳市百思软件公司
- MOSS 2010:Visual Studio 2010开发体验(8)——Silverlight应用
- 【Silverlight】Bing Maps开发应用与技巧四:自定义MapMode实现地图访问限制
- Silverlight开发小技巧之一:灵活应用VS生成事件
- Silverlight 2应用所采用的WCF技术
- 微软发布2008新一代企业级应用平台与开发技术