[置顶] 企业级应用开发silverlight+WCF+orcle 11g开发

企业级应用开发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

[置顶] 企业级应用开发silverlight+WCF+orcle 11g开发_第1张图片

4.关键点

添加文件如图:


[置顶] 企业级应用开发silverlight+WCF+orcle 11g开发_第2张图片  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框架经典模式。


[置顶] 企业级应用开发silverlight+WCF+orcle 11g开发_第3张图片  3)允许开启asp.net访问模式

[置顶] 企业级应用开发silverlight+WCF+orcle 11g开发_第4张图片


[置顶] 企业级应用开发silverlight+WCF+orcle 11g开发_第5张图片

  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

 

 

 

 


 

你可能感兴趣的:([置顶] 企业级应用开发silverlight+WCF+orcle 11g开发)