CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

我对C#一点也不了解,谁能帮我将下面这段C#代码翻译成VB,谢谢!同时一并感谢提供源码的高手!!!

楼主mw515()2006-03-03 10:48:01 在 .NET技术 / ASP.NET 提问

using   System;  
  using   System.ComponentModel;  
  using   System.Collections;  
  using   System.Diagnostics;  
  using   System.Data;  
  using   System.Data.SqlClient;  
  using   System.Configuration;  
   
  namespace   UDS.Components   {  
  ///   <summary>  
  ///   通用的数据库处理类,通过ado.net与数据库连接  
  ///   </summary>  
  public   class   Database   :   IDisposable   {  
  //   连接数据源  
  private   SqlConnection   con;  
   
  ///   <summary>  
  ///   执行存储过程  
  ///   </summary>  
  ///   <param   name="procName">存储过程的名称</param>  
  ///   <returns>返回存储过程返回值</returns>  
  public   int   RunProc(string   procName)   {  
  SqlCommand   cmd   =   CreateCommand(procName,   null);  
  cmd.ExecuteNonQuery();  
  this.Close();  
  return   (int)cmd.Parameters["ReturnValue"].Value;  
  }  
   
  ///   <summary>  
  ///   执行存储过程  
  ///   </summary>  
  ///   <param   name="procName">存储过程名称</param>  
  ///   <param   name="prams">存储过程所需参数</param>  
  ///   <returns>返回存储过程返回值</returns>  
  public   int   RunProc(string   procName,   SqlParameter[]   prams)   {  
  SqlCommand   cmd   =   CreateCommand(procName,   prams);  
  cmd.ExecuteNonQuery();  
  this.Close();  
  return   (int)cmd.Parameters["ReturnValue"].Value;  
  }  
   
  ///   <summary>  
  ///   执行存储过程  
  ///   </summary>  
  ///   <param   name="procName">存储过程的名称</param>  
  ///   <param   name="dataReader">返回存储过程返回值</param>  
  public   void   RunProc(string   procName,   out   SqlDataReader   dataReader)   {  
  SqlCommand   cmd   =   CreateCommand(procName,   null);  
  dataReader   =   cmd.ExecuteReader(System.Data.CommandBehavior.CloseConnection);  
  //return   (int)cmd.Parameters["ReturnValue"].Value;  
  }  
   
  ///   <summary>  
  ///   执行存储过程  
  ///   </summary>  
  ///   <param   name="procName">存储过程的名称</param>  
  ///   <param   name="prams">存储过程所需参数</param>  
  ///   <param   name="dataReader">存储过程所需参数</param>  
  public   void   RunProc(string   procName,   SqlParameter[]   prams,   out   SqlDataReader   dataReader)   {  
  SqlCommand   cmd   =   CreateCommand(procName,   prams);  
  dataReader   =   cmd.ExecuteReader(System.Data.CommandBehavior.CloseConnection);  
  //return   (int)cmd.Parameters["ReturnValue"].Value;  
  }  
   
  ///   <summary>  
  ///   创建一个SqlCommand对象以此来执行存储过程  
  ///   </summary>  
  ///   <param   name="procName">存储过程的名称</param>  
  ///   <param   name="prams">存储过程所需参数</param>  
  ///   <returns>返回SqlCommand对象</returns>  
  private   SqlCommand   CreateCommand(string   procName,   SqlParameter[]   prams)   {  
  //   确认打开连接  
  Open();  
   
   
  SqlCommand   cmd   =   new   SqlCommand(procName,   con);  
  cmd.CommandType   =   CommandType.StoredProcedure;  
   
  //   依次把参数传入存储过程  
  if   (prams   !=   null)   {  
  foreach   (SqlParameter   parameter   in   prams)  
  cmd.Parameters.Add(parameter);  
  }  
   
  //   加入返回参数  
  cmd.Parameters.Add(  
  new   SqlParameter("ReturnValue",   SqlDbType.Int,   4,  
  ParameterDirection.ReturnValue,   false,   0,   0,  
  string.Empty,   DataRowVersion.Default,   null));  
   
  return   cmd;  
  }  
   
  ///   <summary>  
  ///   打开数据库连接.  
  ///   </summary>  
  private   void   Open()   {  
  //   打开数据库连接  
  if   (con   ==   null)   {  
  con   =   new   SqlConnection(ConfigurationSettings.AppSettings["ConnectionString"]);  
  }  
  if(con.State   ==System.Data.ConnectionState.Closed)  
  con.Open();  
   
  }  
   
  ///   <summary>  
  ///   关闭数据库连接  
  ///   </summary>  
  public   void   Close()   {  
  if   (con   !=   null)  
  con.Close();  
  }  
   
  ///   <summary>  
  ///   释放资源  
  ///   </summary>  
  public   void   Dispose()   {  
  //   确认连接是否已经关闭  
  if   (con   !=   null)   {  
  con.Dispose();  
  con   =   null;  
  }  
  }  
   
  ///   <summary>  
  ///   传入输入参数  
  ///   </summary>  
  ///   <param   name="ParamName">存储过程名称</param>  
  ///   <param   name="DbType">参数类型</param></param>  
  ///   <param   name="Size">参数大小</param>  
  ///   <param   name="Value">参数值</param>  
  ///   <returns>新的   parameter   对象</returns>  
  public   SqlParameter   MakeInParam(string   ParamName,   SqlDbType   DbType,   int   Size,   object   Value)   {  
  return   MakeParam(ParamName,   DbType,   Size,   ParameterDirection.Input,   Value);  
  }  
   
  ///   <summary>  
  ///   传入返回值参数  
  ///   </summary>  
  ///   <param   name="ParamName">存储过程名称</param>  
  ///   <param   name="DbType">参数类型</param>  
  ///   <param   name="Size">参数大小</param>  
  ///   <returns>新的   parameter   对象</returns>  
  public   SqlParameter   MakeOutParam(string   ParamName,   SqlDbType   DbType,   int   Size)   {  
  return   MakeParam(ParamName,   DbType,   Size,   ParameterDirection.Output,   null);  
  }  
   
  ///   <summary>  
  ///   传入返回值参数  
  ///   </summary>  
  ///   <param   name="ParamName">存储过程名称</param>  
  ///   <param   name="DbType">参数类型</param>  
  ///   <param   name="Size">参数大小</param>  
  ///   <returns>新的   parameter   对象</returns>  
  public   SqlParameter   MakeReturnParam(string   ParamName,   SqlDbType   DbType,   int   Size)    
  {  
  return   MakeParam(ParamName,   DbType,   Size,   ParameterDirection.ReturnValue,   null);  
  }  
   
  ///   <summary>  
  ///   生成存储过程参数  
  ///   </summary>  
  ///   <param   name="ParamName">存储过程名称</param>  
  ///   <param   name="DbType">参数类型</param>  
  ///   <param   name="Size">参数大小</param>  
  ///   <param   name="Direction">参数方向</param>  
  ///   <param   name="Value">参数值</param>  
  ///   <returns>新的   parameter   对象</returns>  
  public   SqlParameter   MakeParam(string   ParamName,   SqlDbType   DbType,   Int32   Size,   ParameterDirection   Direction,   object   Value)   {  
  SqlParameter   param;  
   
  if(Size   >   0)  
  param   =   new   SqlParameter(ParamName,   DbType,   Size);  
  else  
  param   =   new   SqlParameter(ParamName,   DbType);  
   
  param.Direction   =   Direction;  
  if   (!(Direction   ==   ParameterDirection.Output   &&   Value   ==   null))  
  param.Value   =   Value;  
   
  return   param;  
  }  
  }  
  }  
  问题点数:20、回复次数:3Top

1 楼xiahouwen(武眉博<活靶子.NET>)回复于 2006-03-03 10:53:20 得分 0

使用  
   
  Convert   C#   to   VB   .NET    
   
  http://www.gotdotnet.com/Community/UserSamples/Details.aspx?SampleGuid=c622348b-18a9-47d6-8687-979975d5957d  
   
  或者  
   
  http://kamalpatel.net/ConvertCSharp2VB.aspxTop

2 楼xiahouwen(武眉博<活靶子.NET>)回复于 2006-03-03 10:54:27 得分 0

'Error:   Converting   Properties    
  Imports   System  
  Imports   System.ComponentModel  
  Imports   System.Collections  
  Imports   System.Diagnostics  
  Imports   System.Data  
  Imports   System.Data.SqlClient  
  Imports   System.Configuration  
     
  Namespace   UDS.Components  
  '/   <summary>  
  '/   通用的数据库处理类,通过ado.net与数据库连接  
  '/   </summary>  
  Public   Class   Database  
    Implements   IDisposable  
  '   连接数据源  
  Private   con   As   SqlConnection  
     
  '/   <summary>  
  '/   执行存储过程  
  '/   </summary>  
  '/   <param   name="procName">存储过程的名称</param>  
  '/   <returns>返回存储过程返回值</returns>  
  Public   Function   RunProc(ByVal   procName   As   String)   As   Integer  
  Dim   cmd   As   SqlCommand   =     CreateCommand(procName,Nothing)    
  cmd.ExecuteNonQuery()  
  Me.Close()  
  Return   CType(cmd.Parameters("ReturnValue").Value,   Integer)  
  End   Function  
     
  '/   <summary>  
  '/   执行存储过程  
  '/   </summary>  
  '/   <param   name="procName">存储过程名称</param>  
  '/   <param   name="prams">存储过程所需参数</param>  
  '/   <returns>返回存储过程返回值</returns>  
  Public   Function   RunProc(ByVal   procName   As   String,   ByVal   prams()   As   SqlParameter)   As   Integer  
  Dim   cmd   As   SqlCommand   =     CreateCommand(procName,prams)    
  cmd.ExecuteNonQuery()  
  Me.Close()  
  Return   CType(cmd.Parameters("ReturnValue").Value,   Integer)  
  End   Function  
     
  '/   <summary>  
  '/   执行存储过程  
  '/   </summary>  
  '/   <param   name="procName">存储过程的名称</param>  
  '/   <param   name="dataReader">返回存储过程返回值</param>  
  Public     Sub   RunProc(ByVal   procName   As   String,   ByRef   dataReader   As   SqlDataReader)  
  Dim   cmd   As   SqlCommand   =     CreateCommand(procName,Nothing)    
  dataReader   =   cmd.ExecuteReader(System.Data.CommandBehavior.CloseConnection)  
  'return   (int)cmd.Parameters["ReturnValue"].Value;  
  End   Sub  
     
  '/   <summary>  
  '/   执行存储过程  
  '/   </summary>  
  '/   <param   name="procName">存储过程的名称</param>  
  '/   <param   name="prams">存储过程所需参数</param>  
  '/   <param   name="dataReader">存储过程所需参数</param>  
  Public     Sub   RunProc(ByVal   procName   As   String,   ByVal   prams()   As   SqlParameter,   ByRef   dataReader   As   SqlDataReader)  
  Dim   cmd   As   SqlCommand   =     CreateCommand(procName,prams)    
  dataReader   =   cmd.ExecuteReader(System.Data.CommandBehavior.CloseConnection)  
  'return   (int)cmd.Parameters["ReturnValue"].Value;  
  End   Sub  
     
  '/   <summary>  
  '/   创建一个SqlCommand对象以此来执行存储过程  
  '/   </summary>  
  '/   <param   name="procName">存储过程的名称</param>  
  '/   <param   name="prams">存储过程所需参数</param>  
  '/   <returns>返回SqlCommand对象</returns>  
  Private   Function   CreateCommand(ByVal   procName   As   String,   ByVal   prams()   As   SqlParameter)   As   SqlCommand  
  '   确认打开连接  
  Open()  
     
     
  Dim   cmd   As   SqlCommand   =     New   SqlCommand(procName,con)    
  cmd.CommandType   =   CommandType.StoredProcedure  
     
  '   依次把参数传入存储过程  
  If   Not   prams   Is   Nothing   Then  
  Dim   parameter   As   SqlParameter  
  For   Each   parameter   In   prams  
  cmd.Parameters.Add(parameter)  
  Next  
  End   If  
     
  '   加入返回参数  
  cmd.Parameters.Add(  
  New   SqlParameter("ReturnValue",   SqlDbType.Int,   4,  
  ParameterDirection.ReturnValue,   False,   0,   0,  
  String.Empty,   DataRowVersion.Default,   Nothing))  
     
  Return   cmd  
  End   Function  
     
  '/   <summary>  
  '/   打开数据库连接.  
  '/   </summary>  
  Private     Sub   Open()  
  '   打开数据库连接  
  If   con   Is   Nothing   Then  
  con   =   New   SqlConnection(ConfigurationSettings.AppSettings("ConnectionString"))  
  End   If  
  If   con.State   =System.Data.ConnectionState.Closed   Then  
  con.Open()  
  End   If  
     
  End   Sub  
     
  '/   <summary>  
  '/   关闭数据库连接  
  '/   </summary>  
  Public     Sub   Close()  
  If   Not   con   Is   Nothing   Then  
  con.Close()  
  End   If  
  End   Sub  
     
  '/   <summary>  
  '/   释放资源  
  '/   </summary>  
  Public     Sub   Dispose()  
  '   确认连接是否已经关闭  
  If   Not   con   Is   Nothing   Then  
  con.Dispose()  
  con   =   Nothing  
  End   If  
  End   Sub  
     
  '/   <summary>  
  '/   传入输入参数  
  '/   </summary>  
  '/   <param   name="ParamName">存储过程名称</param>  
  '/   <param   name="DbType">参数类型</param></param>  
  '/   <param   name="Size">参数大小</param>  
  '/   <param   name="Value">参数值</param>  
  '/   <returns>新的   parameter   对象</returns>  
  Public   Function   MakeInParam(ByVal   ParamName   As   String,   ByVal   DbType   As   SqlDbType,   ByVal   Size   As   Integer,   ByVal   Value   As   Object)   As   SqlParameter  
  Return   MakeParam(ParamName,DbType,Size,ParameterDirection.Input,Value)  
  End   Function  
     
  '/   <summary>  
  '/   传入返回值参数  
  '/   </summary>  
  '/   <param   name="ParamName">存储过程名称</param>  
  '/   <param   name="DbType">参数类型</param>  
  '/   <param   name="Size">参数大小</param>  
  '/   <returns>新的   parameter   对象</returns>  
  Public   Function   MakeOutParam(ByVal   ParamName   As   String,   ByVal   DbType   As   SqlDbType,   ByVal   Size   As   Integer)   As   SqlParameter  
  Return   MakeParam(ParamName,DbType,Size,ParameterDirection.Output,Nothing)  
  End   Function  
     
  '/   <summary>  
  '/   传入返回值参数  
  '/   </summary>  
  '/   <param   name="ParamName">存储过程名称</param>  
  '/   <param   name="DbType">参数类型</param>  
  '/   <param   name="Size">参数大小</param>  
  '/   <returns>新的   parameter   对象</returns>  
  Public   Function   MakeReturnParam(ByVal   ParamName   As   String,   ByVal   DbType   As   SqlDbType,   ByVal   Size   As   Integer)   As   SqlParameter  
  Return   MakeParam(ParamName,DbType,Size,ParameterDirection.ReturnValue,Nothing)  
  End   Function  
     
  '/   <summary>  
  '/   生成存储过程参数  
  '/   </summary>  
  '/   <param   name="ParamName">存储过程名称</param>  
  '/   <param   name="DbType">参数类型</param>  
  '/   <param   name="Size">参数大小</param>  
  '/   <param   name="Direction">参数方向</param>  
  '/   <param   name="Value">参数值</param>  
  '/   <returns>新的   parameter   对象</returns>  
  Public   Function   MakeParam(ByVal   ParamName   As   String,   ByVal   DbType   As   SqlDbType,   ByVal   Size   As   Int32,   ByVal   Direction   As   ParameterDirection,   ByVal   Value   As   Object)   As   SqlParameter  
  Dim   param   As   SqlParameter  
     
  If   Size   >   0   Then  
  param   =   New   SqlParameter(ParamName,   DbType,   Size)  
  Else    
  param   =   New   SqlParameter(ParamName,   DbType)  
  End   If  
     
  param.Direction   =   Direction  
  If   Not   (Direction   =   ParameterDirection.Output   And   Value   =   Nothing)   Then  
  param.Value   =   Value  
  End   If  
     
  Return   param  
  End   Function  
  End   Class  
  End   Namespace  
   
  '----------------------------------------------------------------  
  '   Converted   from   C#   to   VB   .NET   using   CSharpToVBConverter(1.2).  
  '   Developed   by:   Kamal   Patel   (http://www.KamalPatel.net)    
  '----------------------------------------------------------------  
  Top

3 楼mw515()回复于 2006-03-03 10:56:36 得分 0

谢谢!Top

相关问题

  • 最近在学VB,发现好难学啊!! 比VC一点也不简单~~~~~~
  • 求C#源码!!!
  • DirectX 一点也不快 : (
  • 求Beginning C# 源码
  • 求C++模板源码
  • 求C#工资源码
  • C+VB?
  • vb to c#
  • 交换VB系统源码!
  • 请发vb源码给我!

关键词

  • .net
  • ado.net
  • c#
  • 存储过程
  • 数据库
  • 连接
  • 执行
  • 参数
  • procname
  • paramname

得分解答快速导航

  • 帖主:mw515

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo