使用C#生成dll文件並調用
一、創建dll文件:
例如生成一個md5編碼判斷狀態的文件,即,輸入一個字元串(string A)和一個32位md5編碼(string B),判斷此字元串A對應的32位md5編碼是否與B相等,如果相等返回true,否則返回false。
打開VS 2005,「文件」--》「新建」--「項目」,選擇「Windows 控制項庫」,命名後點擊「確定」,在「UserControl1.cs」中輸入以下代碼:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Windows.Forms;
using System.Text;
using System.Security.Cryptography;
namespace md5
{
public partial class Program : UserControl
{
#region MD5 32位加密:GetMd5Str32
/// <summary>
/// 32位MD5加密
/// </summary>
/// <param name="strSource">待加密字串</param>
/// <returns>加密後的字串</returns>
public static string GetMd5Str32(string strSource)
{
byte[] bytes = Encoding.ASCII.GetBytes(strSource);
byte[] hashValue = ((System.Security.Cryptography.HashAlgorithm)System.Security.Cryptography.CryptoConfig.CreateFromName("MD5")).ComputeHash(bytes);
StringBuilder sb = new StringBuilder();
for (int i = 0; i < 16; i++)
{
sb.Append(hashValue[i].ToString("x2"));
}
return sb.ToString().ToUpper();
}
#endregion
#region 核對md5編碼是否一致:CheckMd5String()
/// <summary>
/// 核對md5編碼是否一致
/// </summary>
/// <param name="ConvertString"></param>
/// <returns>如果一致返回true,否則返回false</returns>
///
public static bool CheckMd5String(string str1, string str2)
{
string md5String = str1; //需要驗證的字元串
string md5DbString = str2; //需要核對的32位md5編碼
int result = string.Compare(md5.Program.GetMd5Str32(str1), md5DbString, true);
if (result == 0)
{
return true;
}
else
{
return false;
}
}
#endregion
}
}
修改「UserControl1.Designer.cs」中的命名空間為「md5」,方法為「Program」,即可生成dll文件。
在...\bin\Debug文件假下,可以找到相應的dll文件。
二、部署dll流程:
首先把dll文件放到應用程序...\bin\Debug\下;
然後在解決方案中添加引用:右鍵滑鼠-->添加引用-->瀏覽-->選擇dll放置路徑後點擊「確定」。
注意:要在應用文件頭處使用using md5;命令。
測試應用程序代碼,如下:Form1.cs
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using md5;
namespace WindowsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
string str1 = textBox1.Text.ToString();
string md5String = textBox2.Text.ToString();
textBox3.Text = md5.Program.GetMd5Str32(str1);
textBox4.Text = md5.Program.CheckMd5String(str1, md5String).ToString();
}
private void button2_Click(object sender, EventArgs e)
{
this.Close();
}
}
}
2. 怎麼把資料庫的數據封裝成json數據
首先,讀取出來數據,應該是DataTable之類的
然後,把DataTable轉成json,具體轉的方法網上有好多,看你具體用的什麼語言
3. 如何將資料庫查出來的數據封裝成xml
xml文件,使用dom4jjar包讀取和生成,講資料庫讀取的數據封裝成entity,設定entity如何通過dom4j轉換成xml文件就可以了。
4. 如何封裝資料庫操作類
class Dbo{
String insert(表名,參數1...參數n){
執行 插入語句;
return 「操作成功」or 「操作失敗」
}
String delete(表名,參數1...參數n){
執行 刪除語句;
return 「操作成功」or 「操作失敗」
}
String update(表名,參數1...參數n){
執行 修改語句;
return 「操作成功」or 「操作失敗」
}
String select(表名,參數1...參數n){
執行查詢語句;
return 「查詢結果」or 「查詢失敗」
}
}
5. Sql2000資料庫怎樣封裝
直接對資料庫封裝?好象不行吧,最多你把代碼封裝,資料庫里把許可權設置好,別人也直接進不來,然後在對一些存儲過程加密.
6. 用到BMOB資料庫和登錄,自己封裝的幾個方法
自從node-js出現之後,不只是java,php等後端語言可以操作資料庫,進行內容的增刪改查,javascript簡本語言同樣具備了該項技能,而且在node下,js具備了很強的操作性和代碼的閱讀性,讓晦澀難懂的代碼變得更加的清晰了,下面我簡單介紹javascript如何操作資料庫進行登錄注冊功能的實現。
首先,頁面部分就直接省略了,我們默認已經安裝資料庫了,開始從注登錄說起。
exports.login =function(req,res){ var username=req.body.uname; var pwd=req.body.psd; var sql="select * from student where username=? and password=?"; var con=dbcon.getCon(); con.query(sql,[username,pwd], function (err,result) { if(!err){ if(result.length==0){ res.json(0); }else{ res.json(1) } }else{ console.log(err) } con.destroy() }) };
首先,點擊登錄按鈕,我們跳轉到登錄頁面,通過獲取到用戶輸入的input值,通過下標的方法取得輸入的username和pwd的值,通過連接資料庫,判斷回調函數返回的狀態值,如果成功,給予提示用戶注冊成功,緊接著進行頁面的跳轉,如果出現異常,給出提示,並相應的跳轉到錯誤頁面,在此處我們可以使用try{}catch(){}方法進行攔截,列印出具體的錯誤信息。
緊接著,我們再來講一下注冊的操作,顧名思義,注冊就是將原本不存在於資料庫的用戶資料通過資料庫的insert語句插入資料庫中,道理和登錄有些類似,首先,我們需要輸入需要注冊的信息,然後獲取到這些信息,然後再發送一個非同步請求驗證資料庫是否有這些資料,如果沒有的話就直接創建這些資料。下面我們使用代碼來說明這些原理。
exports.regists=function(req,res,name,password){ var sql="insert into stuinfo(name,password) values(?,?)" conn.query(sql,[name,password],function(err,result){ if(result.affectedRows==1){ req.session.name=name; res.sendfile('./public/view.html') } }) } exports.login=login;
首先,我們將注冊這個方法進行封裝,然後通過node的exports進行導出,便於被調用,在這個方法裡面,通過佔位符的方法插入username和password,然後通過資料庫,將獲取的參數值進行插入,通過回調函數狀態碼的判斷,確認插入成功,並在成功之後將我們注冊成功的session顯示在頁面作為標識。
以上就是js簡單的登錄注冊的代碼,其中涉及到的知識點不只是上述提到的,還包括了資料庫的基本知識,了解基本的sql查詢語句,並能通過js成功連接資料庫。我們始終相信萬丈高樓平地起,只要去哦們一步一個腳印,總有一天,可以成為自己乃至別人眼中的高手。
7. 求教IOCP裡面如何封裝資料庫的操作
建議你學一下hibernate
像你說的這樣估計是有多表之間的關聯,如表之間存在1對1、1對多、多對1的關系,這時是用hibernate可是將所有的表封裝,在你從資料庫差出某條數據時,hibernate可以幫你查處和這條數據相關的其他表中的數據,這樣可以封裝你可能用到的所有的類,進而,表面上你只查了一次,其實hibernate幫你把潛在需要的數據也封裝了。
例如:
表A對應著類A,表B對應著類B。表A和表B之間是一對多的關系。
類A和類B將有如下關系:
class A{
Set bs = new HashSet();
A的其它屬性和方法
}
class B{
A a;
B的其它屬性和方法
}
8. python如何使用pymysql連接資料庫封裝類
1、python安裝目錄設定為d:/python34
2、pymysql安裝方法為:解壓下載的文件,在cmd中運行: python setup.py install。
檢驗安裝安裝是否成功的方法:import pymysql 。 如果不報錯 說明安裝成功。
3、mysql安裝目錄為D:/phpStudy/MySQL。為避免更多配置問題,可在啟動phpstudy後,將其設為系統服務
4、基本操作:
(1)導入pymysql: import pymysql
(2)連接資料庫:
conn=pymysql.connect(host='localhost',user='root',passwd='root',db='ere',charset='utf8')
務必注意各等號前面的內容!charset參數可避免中文亂碼
(3)獲取操作游標:cur=conn.cursor()
(4)執行sql語句,插入記錄:sta=cur.execute("insert 語句") 執行成功後sta值為1。更新、刪除語句與此類似。
(5)執行sql語句,查詢記錄:cur.execute("select語句") 執行成功後cur變數中保存了查詢結果記錄集,然後再用循環列印結果:
for each in cur:
print(each[1].decode('utf-8')) # each[1] 表示當前游標所在行的的第2列值,如果是中文則需要處理編碼
9. python資料庫查詢怎麼封裝
1、安裝MySQL-python-1.2.3.win-amd64-py2.7.exe,這是操作mysql資料庫的python庫,有32位和64位之分,看自機器下載
2、64位機器安裝MySQL-python-1.2.3.win-amd64-py2.7.exe出現 which was not found the regidtry
10. 9.6 如何封裝sql 資料庫命令舉例
做成 存儲過程
create procere sp_procere --創建存儲過程
(@key varchar(10)) --設置傳遞的參數(可以沒有)
as
begin
--需封裝的sql語句
end
運行該存儲過程
exec sp_procere 參數