Configurer la connexion à la base de données et la conversion json

Y2J
Libérer: 2017-05-06 11:59:30
original
1637 Les gens l'ont consulté

Cet article présente principalement les méthodes de configuration de diverses connexions de base de données dans ASP.NET. Il présente en détail la configuration des bases de données MSSQL, Access, Oracle, SQLite et MySQL. Il a une certaine valeur de référence. plus. .

1. Déclaration de connexion à la base de données

1. Exemple de lien de base de données MSSQL

 <connectionStrings>
 <add name="Conn" connectionString="server=.;database=demo;uid=sa;pwd=123456" providerName="System.Data.SqlClient"/>
 </connectionStrings>
Copier après la connexion

2. Exemple de lien de base de données 2003 : "{0}" représente le répertoire racine

 <connectionStrings>
 <add name="Conn" connectionString="Provider=Microsoft.Jet.OLEDB.4.0; Data Source={0}App_Data/demo.mdb" providerName="System.Data.OleDb"/>
 </connectionStrings>
Copier après la connexion
Copier après la connexion

Lien de version Access 2007 ou supérieure

 <connectionStrings>
 <add name="Conn" connectionString="Provider=Microsoft.Jet.OLEDB.4.0; Data Source={0}App_Data/demo.mdb" providerName="System.Data.OleDb"/>
 </connectionStrings>
Copier après la connexion
Copier après la connexion

Exemple de lien de base de données Oracle

 <connectionStrings>
 <add name="Conn" connectionString="Provider=MSDAORA;Data Source=demo;User ID=sa;Password=123456;" providerName="System.Data.OracleClient"/>
 </connectionStrings>
Copier après la connexion

4. Exemple de lien de base de données SQLite

 <connectionStrings>
 <add name="Conn" connectionString="Data Source={0}App_Data/demo.db;failifmissing=false" providerName="System.Data.SQLite"/>
 </connectionStrings>
Copier après la connexion

5 : Exemple de lien de base de données MySQL

 <connectionStrings>
 <add name="Conn" connectionString="host=127.0.0.1;Port=3306;Database=mysql;uid=sa;pwd=12346" providerName="MySql.Data.MySqlClient"/>
 </connectionStrings>
Copier après la connexion

2.

【Recommandations associées】
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Reflection;
using System.Text;
using System.Web;
using System.Web.Script.Serialization;

namespace Role.DAL
{
 public class Json
 {
  public Json() { }

  /// <summary>
  ///将datatable数据转换成JSON数据, 字符串拼接写成的
  /// </summary>
  /// <param name="jsonName">json名称。没发现什么作用</param>
  /// <param name="dt">得到的数据表</param>
  /// <returns></returns>
  public string DataTableToJson(string jsonName, DataTable dt)
  {
   StringBuilder Json = new StringBuilder();
   Json.Append("[");
   if (dt.Rows.Count > 0)
   {
    for (int i = 0; i < dt.Rows.Count; i++)
    {
     Json.Append("{");
     for (int j = 0; j < dt.Columns.Count; j++)
     {
      Json.Append(dt.Columns[j].ColumnName.ToString() + ":\"" + dt.Rows[i][j].ToString() + "\"");
      if (j < dt.Columns.Count - 1)
      {
       Json.Append(",");
      }
     }
     Json.Append("}");
     if (i < dt.Rows.Count - 1)
     {
      Json.Append(",");
     }
    }
   }
   Json.Append("]");
   return Json.ToString();
  }


  /// <summary>
  /// 列表数据转换到json数据;字符串拼接写成的,太难
  /// </summary>
  /// <typeparam name="T"></typeparam>
  /// <param name="jsonName">json名称。没发现什么作用</param>
  /// <param name="IL"></param>
  /// <returns></returns>
  public string ObjectToJson<T>(string jsonName, IList<T> IL)
  {
   StringBuilder Json = new StringBuilder();
   Json.Append("[");
   if (IL.Count > 0)
   {
    for (int i = 0; i < IL.Count; i++)
    {
     T obj = Activator.CreateInstance<T>();
     Type type = obj.GetType();
     PropertyInfo[] pis = type.GetProperties();
     Json.Append("{");
     for (int j = 0; j < pis.Length; j++)
     {
      Json.Append(pis[j].Name.ToString() + ":\"" + pis[j].GetValue(IL[i], null) + "\"");
      if (j < pis.Length - 1)
      {
       Json.Append(",");
      }
     }
     Json.Append("}");
     if (i < IL.Count - 1)
     {
      Json.Append(",");
     }
    }
   }
   Json.Append("]");
   return Json.ToString();
  }

  /// <summary>
  /// 将DataTable转化为自定义JSON数据
  /// </summary>
  /// <param name="dt">数据表</param>
  /// <returns>JSON字符串</returns> 
  public static string DataTableToJson(DataTable dt)
  {
   StringBuilder JsonString = new StringBuilder();
   if (dt != null && dt.Rows.Count > 0)
   {
    List<Dictionary<string, string>> list = new List<Dictionary<string, string>>();
    for (int i = 0; i < dt.Rows.Count; i++)
    {
     Dictionary<string, string> dict = new Dictionary<string, string>();
     for (int j = 0; j < dt.Columns.Count; j++)
     {
      dict.Add(dt.Columns[j].ColumnName, dt.Rows[i][j].ToString());
     }
     list.Add(dict);
    }
    JavaScriptSerializer jsonSerializer = new JavaScriptSerializer();
    return jsonSerializer.Serialize(list);
   }
   else
   {
    return "{}";
   }
  }

  /// <summary>
  /// 将datatable转换为json 
  /// </summary>
  /// <param name="dtb">Dt</param>
  /// <returns>JSON字符串</returns>
  public static string Dtb2Json(DataTable dtb)
  {
   JavaScriptSerializer jss = new JavaScriptSerializer();
   System.Collections.ArrayList dic = new System.Collections.ArrayList();
   if (dtb != null && dtb.Rows.Count > 0)
   {
    foreach (DataRow dr in dtb.Rows)
    {
     System.Collections.Generic.Dictionary<string, object> drow = new System.Collections.Generic.Dictionary<string, object>();
     foreach (DataColumn dc in dtb.Columns)
     {
      drow.Add(dc.ColumnName, dr[dc.ColumnName]);
     }
     dic.Add(drow);
    }
    //序列化 
    return jss.Serialize(dic);
   }
   else
   {
    return "{}";
   }
  }

 }
}
Copier après la connexion

1

Tutoriel vidéo gratuit ASP

2.

Tutoriel ASP

3.

Tutoriel vidéo de base de Li Yanhui ASP

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!