1. 程式人生 > >ASP.net MVC4 + mono+ ubuntu15.1+ jexus +ef6 +mysql (linq to mysql) 實錄,以及各類錯誤總結

ASP.net MVC4 + mono+ ubuntu15.1+ jexus +ef6 +mysql (linq to mysql) 實錄,以及各類錯誤總結

    CSDN廣告是越來越多了,所有部落格筆記不再更新,新網址 DotNet筆記

專案配置:ef6+mysql5.6(5.6.x , 5.7.3可以,但是5.7.9不行)+mono4.2+ubuntu15.1

準備工作:(注意 mysql版本)提前下載並安裝好mysql for vs 外掛  詳情   外掛下載

1)建專案-----》選擇.net4.0 mvc專案

2)EntityFramework更新到最新

3)下載最新的mysql-connector-net-6.9.8-noinstall,解壓到然後找到對應.net版本的dll檔案(5個),新增引用到專案中

4) 把對應的web.config中的entityFramework節點修改為下面(注意版本號Version=x.x.x,要與MySql.Data.dll一致):

  <entityFramework>
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
      <parameters>
        <parameter value="v12.0" />
      </parameters>
    </defaultConnectionFactory>
    <providers>
      <provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6, Version=6.9.8.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d"></provider>
    </providers>
  </entityFramework>
  <!--linux下面需要加上下面這一段system.data,windows下面可以不加-->
  <system.data>
    <DbProviderFactories>
      <!--為防止重複。windows下面重複新增會報錯,先移除,再新增-->
      <remove invariant="MySql.Data.MySqlClient" />
      <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.9.8.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
    </DbProviderFactories>
  </system.data>

      改後如配置圖

5) 新增實體模型,如下系列圖:


6) 編譯--->釋出到伺服器(windows或linux下面都嘗試一下)--->重啟web伺服器--->瀏覽

    結束!!!

以下為常見問題:

問題1:VS2013中,EntityFramework連線mysql生成實體的過程,選擇連結地址後,對話方塊閃退。
解決: MySql Connector Net 的版本和 MySql.Data.dll的版本不相容 ,下載最新的

MySql Connector Net下載地址:http://cdn.mysql.com//Downloads/Connector-Net/mysql-connector-net-6.9.8.msi
MySql.Data.dll的下載地址:http://dev.mysql.com/downloads/connector/net/  點選下載(檔名mysql-connector-net-6.9.8-noinstall.zip,注意Select Platform:.net&mono)
先解壓mysql-connector-net-6.9.8-noinstall.zip,把版本對應的dll新增到專案中-----》安裝mysql-connector-net-6.9.8.msi



問題2:新增資料庫實體模型的時候,出現報錯:由於出現以下異常,無法生成模型:“表“TableDetails”中列“IsPrimaryKey”的值為DbNull

解決:我用的是mysql 5.7.9,出錯了,然後換成5.7.3,或5.6.X 等版本就好了。


問題3:釋出到linux mono上其他類錯誤,一般就解決方式就是 1)mysql-connector-net-6.9.8-noinstall.zip解壓後重新引用專案    2)新增/檢查<system.data>節點

問題4:mysql伺服器在ubuntu上面無法遠端的問題

解決:

第一步:允許配置mysql,讓root賬號允許遠端

    登陸mysql命令:mysql -u root -p

    更改Root賬號:UPDATE user SET `Host` = '%' WHERE `User` = 'root' LIMIT 1;
    重新整理快取:flush privileges;

第二步:配置mysql,不讓他僅僅監聽127.0.0.1

    進入指定的目錄:cd  /etc/mysql/mysql.conf.d

    開啟mysqld.cnf檔案:sudo gedit mysqld.cnf

    然後找到bind-address所在的行(當前bind-address=127.0.0.1),直接改為#bind-address=127.0.0.1,就是註釋掉

相關推薦

ASP.net MVC4 + mono+ ubuntu15.1+ jexus +ef6 +mysql (linq to mysql) 實錄以及各類錯誤總結

    CSDN廣告是越來越多了,所有部落格筆記不再更新,新網址 DotNet筆記 專案配置:ef6+mysql5.6(5.6.x , 5.7.3可以,但是5.7.9不行)+mono4.2+ubuntu15.1 準備工作:(注意 mysql版本)提前下載並安裝好mysql

Asp.Net MVC4入門指南(1): 入門介紹

前言 本教程將為您講解使用微軟的Visual Studio Express 2012或Visual Web Developer 2010 Express Service Pack 1 來建立一個ASP.NET MVC4 Web應用程式所需要的基礎知識。建議您使用Visual Studio 2012,你將不再

CentOS上 Mono 3.2.8執行ASP.NET MVC4經驗

週一到週三,折騰了兩天半的時間,經歷幾次周折,在小蝶驚鴻的鼎力幫助下,終於在Mono 3.2.8上執行成功MVC4。在此總結經驗如下: 系統平臺的版本: CentOS 6.5 Mono 3.2.8 Jexus 5.5.1  VS2012 英文Ultimate版 由於採用的是英文版本,因此下面圖片也都是英

ASP.NET MVC4中的App_start中BundleConfig的介紹使用

自動配置 cat als sax 初始化 .cn 多個 屬性 要點 在BundleConfig.cs中,指定CSS和JS,主要用來壓縮JS和CSS 在ASP.NET MVC4中(在WebForm中應該也有),有一個叫做Bundle的東西,它用來將js和css進行壓縮

Asp.net MVC4高級編程學習筆記-視圖學習第一課20171009

強類型 編寫 ret namespace i++ 智能 權限 eba 轉換成 首先解釋下:本文只是對Asp.net MVC4高級編程這本書學習記錄的學習筆記,書本內容感覺挺簡單的,但學習容易忘記,因此在邊看的同時邊作下了筆記,可能其它朋友看的話沒有情境和邏輯順序還請諒解

Asp.net MVC4高級編程學習筆記-視圖學習第二課Razor視圖引擎20171010

space view part scrip for span 通過 文本 電子郵件 Razor視圖引擎 1、常用寫法 @標記代碼的轉換字符。 示例: <h1>hello,it’s @users.count items.</h1> //這裏會自動識別

Asp.net MVC4高級編程學習筆記-模型學習第五課MVC表單和HTML輔助方法20171101

流量 取值 工作 sin 輔助 一個點 大量 元數據 view MVC表單和HTML輔助方法 一、表單的使用。 表單中的action與method特性。Action表示表單要提交往那裏,因此這裏就有一個URL。這個URL可以是相對或絕對地址。表單默認的method屬性值是g

Mvc多級Views目錄 asp.net mvc4 路由重寫及 修改view 的尋找視圖的規則

目錄 for .net bool action htm 命名 resource 訪問規則 一般我們在mvc開發過程中,都會碰到這樣的問題。頁面總是寫在Views文件夾下,而且還只能一個Controller的頁面只能寫在相應的以 Controller名命名的文件夾下。如果我們

Centos環境下搭建Asp.NET Core環境和安裝Jexus

logs date mic razor www 啟動 iss jsb run ?? .NET Core2.0出來以後,很多公司開始用於實踐生產,其中的原因想必大家都明白,最主要的一下幾點。 跨平臺,能夠部署在Linux和Docker容器中 性能優越,測試時Node的20倍

Asp.net core 2.0.1 Razor 的使用學習筆記(一)

提升 完成後 安全 provider razor 官方 one text .cn 環境:vs2017 版本:15.5.6 這裏說明下, Razor頁面模式跟mvc出現了嚴重的不同。正如微軟官方說的一樣“Razor 頁面是 ASP.NET Core MVC 的一

Asp.net core 2.0.1 Razor 的使用學習筆記(三)

post 應用程序 新的 entity gin start 密碼強度 ice httponly ASP.net core 2.0.1 中 asp.net identity 2.0.1 的基本使用(二)—用戶賬戶及cookie配置 修改用戶賬戶及cookie配置

c# asp.net mvc4 使用uploadify插件實現上傳功能

image emp 需要 div 9.png 分享圖片 技術分享 傳遞 AR 【1】首先去官網下載插件:http://www.uploadify.com/download/ 。ww我使用的是免費的,基於flash的版本。因為基於H5的版本需付費使用,然後使用該插件也就是做做

ASP.NET MVC4中的異步控制器

follow spa out 重要 .net 計數器 res mode 因此 在拋棄了對.NET 3的支持之後, ASP.NET MVC 4 徹底擁抱了Task類庫, 你不需要再蛋疼的給每個Action寫兩個方法, 也無需傻傻的手動對異步Action計數器增減了(Async

《精通ASP.NET MVC4》學習筆記

實例 重寫方法 fig 功能 add 相同 stat 筆記 .net 第7-11章 SportStore項目實踐 (見個人項目CY.SportsStoreMVC) 第12章 MVC項目綜述 理解約定優於配置:不用明確的配置應用程序中的某種關聯,只要遵守某種約定,一切都

ASP.NET Core 入門教程 1、使用ASP.NET Core 構建第一個Web應用

一、前言 1、本文主要內容 Visual Studio Code 開發環境配置 使用 ASP.NET Core 構建Web應用 ASP.NET Core Web 應用啟動類說明 ASP.NET Core Web 專案結構說明 2、本教程環境資訊 軟體/環境說明 作業系統 Windows 10

ASP.NET MVC4中@model使用多個型別例項的方法

有時需要在ASP.NET MVC4的檢視的@model中使用多個型別的例項,.NET Framework 4.0版本引入的System.Tuple類可以輕鬆滿足這個需求。         假設Person和Product是兩個型別,如下是控制器程式碼。\ using

ASP.NET MVC4在部署IIS後執行時顯示的是整個Web的目錄列表

頁面出現如下圖: 第一種解決方案: 剛安裝好IIS,這時需要註冊IIS. 在Dos中進入Framework的安裝資料夾 你將要釋出的系統是什麼.Net Framework版本,就註冊什麼版本 4.0版本進入 C:\Windows\Microsof

asp.net mvc4 webapi request獲取引數

來園很長時間,不擅長交際的我,一直沒有裝飾家園,最近用mvc4中的WEBAPI,發現接收引數不是很方便,跟傳統的request.querystring和request.form有很大區別,在網上搜了一大圈,各種方案都有,但不是太詳細,於是跟蹤Action中的變數,仔細檢視,最後發現瞭解決方案,下面是程式碼:

ASP.NET MVC4分頁Site.CSS

ASP.NET MVC 4 的基礎分頁的CSS樣式: body { font-family: Calibri,Georgia,"Times New Roman"; margin: 0; } DIV#header { background-color: #444; bo

ASP.NET MVC4使用MongoDB做的相簿管理

TIPS:1.Image轉成Base64儲存到mongodb欄位         2.資料模型是巢狀的關聯 首先定義Model層:    public class Photo : IEquatable<Photo>     {         [Require