経験の分かち合い:C#アップロードのピクチャーはBase 64バイトのリポジトリに回転してそして変換ファイルをサポートしてurlの読み取りを提供します


仕事の中でよくピクチャーのアップロードの機能を使う必要があって、伝統的なサーバーのディレクトリの方式はサーバーの移行、配置と各種のプラットフォームのインタラクティブな時操作があまり便利ではありませんて、ピクチャーの資源はデータベースを保存して比較的に便利なメンテナンスの方式です!以下に、C#で画像リソースを格納および読み込みする方法を示します.
/* ----------------------------------------------------------------------------
 *      
 *           base64  ,         ,            
 * ----------------------------------------------------------------------------
 */

using System.IO;

/* 
*       
*/
int l = file_img1.PostedFile.ContentLength;
byte[] buffer = new byte[l];
Stream s = file_img1.PostedFile.InputStream;
try
{
     s.Read(buffer, 0, l);
     string imgByte = Convert.ToBase64String(buffer);
}
catch (Exception ex)
{
     s.Close();
     s.Dispose();

     throw ex;
}
finally
{
     s.Close();
     s.Dispose();
}

string sqlText = string.Format("insert into tb_image(id,imgByte) values({0},'{1})", id, imgByte);
//      ...



/* ----------------------------------------------------------------------------
 *      
 *          ,    base64  ,              url  
 * ----------------------------------------------------------------------------
 */
 using System.IO;

string imgByte = ...//         
//      base64  
byte[] buffer = Convert.FromBase64String(imgByte);
//              
string imgPath = System.AppDomain.CurrentDomain.BaseDirectory.ToString() + "images\\demo\\imgfile_1.jpg";
if(!File.Exists(imgPath))
{
     //       
     FileStream fs = new FileStream(imgPath, FileMode.Create);
     fs.Write(buffer, 0, (int)buffer.Length);
     fs.Close();
}
//         ,          url  
string domainPath = "../images/demo/imgfile_1.jpg";
//          url:domainPath