• WCF+EntityFramework+mysql总结


    前段时间搞一个项目,用WCF+Ef操作Mysql数据库的,现在,写一下经验总结,希望对大家有帮助。

    1.需下载并安装MySql Connector Net 6.5.4

    2.ef层和wcf服务层引用dll :Mysql.Data  MySql.Data.Entity  MySql.Web 三个dll.

    3.在ef层生成的config文件中,需要改动,把生成的* 改成efmodel所在程序的程序集名称.

    <connectionStrings>
        <add name="t" connectionString="metadata=res://WCFService.Data/PartsSaleMapping.csdl|res://WCFService.Data/PartsSaleMapping.ssdl|
    res://WCFService.Data/PartsSaleMapping.msl;provider=MySql.Data.MySqlClient;provider connection string=&quot;
    server=xxx;User Id=xxx;password=xxx;Persist Security Info=False;database=xxx&quot;
    " providerName="System.Data.EntityClient"/> </connectionStrings>

    4.在Service端config文件中加入mysql引擎

     <system.data>
        <DbProviderFactories>
          <clear />
          <add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL" 
    type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.5.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" /> </DbProviderFactories> </system.data>

    5.如果客户端与服务端可有会有大数据传输时,修改下config文件

                    <binding name="BasicHttpBinding_ISaleService" closeTimeout="00:01:00"
                        openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
                        allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
                        maxBufferSize="20000000" maxBufferPoolSize="20000000" maxReceivedMessageSize="20000000"
                        messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered"
                        useDefaultWebProxy="true">
                        <readerQuotas maxDepth="32" maxStringContentLength="200000000" maxArrayLength="200000000"
                            maxBytesPerRead="4096" maxNameTableCharCount="16384" />

    6.部署服务器,需要装.net framework4.0,服务器C盘下的machine.config,需要加入mysql引擎。

    7.部署的WCF的服务端访差距如果是带域名的,服务端Config文件按以下方式修改

    <serviceHostingEnvironment aspNetCompatibilityEnabled="true">
    <baseAddressPrefixFilters>
    <add prefix="http://www.xxx.cn" />
    </baseAddressPrefixFilters>
    </serviceHostingEnvironment>

    Wcf服务标头中,加入:

    [AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]

    结束,总结到此:)

  • 相关阅读:
    函数
    vue中v-for循环如何将变量带入class的属性名中
    代码规范 前端导航
    2019.8.5 mysql 删除 更新
    2019.8.1
    2019.7.31 Xshell简单学习
    日常使用知识点
    FormData实现文件多次添加累加上传和选择删除
    上传图片
    验证码
  • 原文地址:https://www.cnblogs.com/mahong/p/2752396.html
Copyright © 2020-2023  润新知