c# mssql 用户验证

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c# mssql 用户验证相关的知识,希望对你有一定的参考价值。

指的是MsSql 2008的登陆验证,自己想用C#写一个,它的连接是什么?
或给一个实例吧!

网上的例子,看看是否有帮助

C#操作SQL Server数据库通用类

--------------------------------------------------------------------------------

2008-12-19 17:13:02 标签:C# 操作数据库 通用类   [推送到技术圈]

版权声明:原创作品,如需转载,请与作者联系。否则将追究法律责任。
  在前段时间写的文章<< C#中读取文本文件导入SQL数据库解决方法>>一文中,文章链接:[url]http://alligator.blog.51cto.com/36993/102446[/url]。描述了如何处理具有固定格式文本文件的处理方式,并提供了操作文本文件的源代码供参考。有朋友通过留言希望提供数据操作类,本想重新整理后再放上来,但最近事情太多,精力有限,直接把源码放上来,有兴趣的朋友请参考!

/*
* 说明
* 功能说明:数据访问封装。所有数据都要通过这个类定义的dbConnection访问数据库。同时,定义了通用的cmd,以及cmd常用的访问存储过程的方法RunPro
*
*
* 作者: RogerWang
*
* 创建日期:2006-02-15
*
*/

using System;
using System.Data;
using System.Data.SqlClient;

namespace insurer

/// <summary>
/// DataAccess 的摘要说明。
/// </summary>
public class DataAccess

private readonly string SQLCONNECTSTR = "server=(local);uid=sa;pwd=lwrong;database=insurer";
private SqlConnection dbConnection;
private readonly string RETUENVALUE = "RETURNVALUE";

//判断要不要启动事务
private bool startrans = false;

//为解决多笔数据导入的问题,特添加的事务处理属性
private SqlTransaction trans = null;

//定义是否启动事务属性
public bool StartTrans

get

return startrans;

set

startrans = value;



//定义事务
public SqlTransaction Trans

get

return trans;

set

if (value != null)

trans = value;




//创建打开dbConnection对象
public void OpenConnection()

if ( dbConnection == null )

dbConnection = new SqlConnection(SQLCONNECTSTR);


if ( dbConnection.State == ConnectionState.Closed )

try

dbConnection.Open();

catch(Exception ex)

SystemError.SystemLog(ex.Message);

finally





//释放dbConnection对象
public void CloseConnection()

if (dbConnection != null)

if (dbConnection.State == ConnectionState.Open)

dbConnection.Dispose();
dbConnection = null;




//

//创建cmd,注意dbconnection在该函数中创建,但没有在这函数中释放。
//在正确的面向对象设计方法中,对象应该是谁创建,谁就应该负责释放。按这个观点,这个过程有些不安全!!!!
private SqlCommand CreateCommand(string ProName,SqlParameter[] prams)

OpenConnection();
SqlCommand cmd = new SqlCommand(ProName,dbConnection);
cmd.CommandType = CommandType.StoredProcedure;

//如果进行事务处理,那么对cmd的Transaction的事务赋值
if (StartTrans)

cmd.Transaction = Trans;


if ( prams != null)

foreach(SqlParameter parameter in prams)

cmd.Parameters.Add(parameter);



//cmd.Parameters.Add(

return cmd;



/// <summary>
/// 创建cmd,并执行相应的操作。 然后释放cmd!
///
/// 该函数是执行cmd没有返回值,且没有参数的方法。
/// </summary>
/// <param name="ProName"></param>
public bool RunProc(string ProName)

SqlCommand cmd = CreateCommand(ProName,null);

bool k = false;
try

k = (bool)cmd.ExecuteScalar();

catch(Exception ex)

SystemError.SystemLog(ex.Message);

finally

cmd.Dispose();

return k;



/// <summary>
/// 创建cmd,并执行相应的操作。 然后释放cmd!
///
/// 该函数是执行cmd没有返回值,但有参数的方法。
/// </summary>
/// <param name="ProName"></param>
/// <param name="prams"></param>
public bool RunProc(string ProName,SqlParameter[] prams)

SqlCommand cmd = CreateCommand(ProName,prams);

bool k = false;
try

k = (bool) cmd.ExecuteScalar();

catch(Exception ex)

SystemError.SystemLog(ex.Message);

finally

cmd.Dispose();
//Close();

return k;


/// <summary>
/// 创建cmd,并执行相应的操作。 然后释放cmd!
///
/// 该函数是执行cmd带有返回值,但没有参数的方法。
/// </summary>
/// <param name="ProName"></param>
/// <param name="dataReader"></param>
public void RunProc(string ProName,out SqlDataReader dataReader)

SqlCommand cmd = CreateCommand(ProName,null);
dataReader = cmd.ExecuteReader(CommandBehavior.CloseConnection);
try



catch(Exception ex)

SystemError.SystemLog(ex.Message);

finally

cmd.Dispose();



/// <summary>
/// 创建cmd,并执行相应的操作。 然后释放cmd!
///
/// 该函数是执行cmd带有返回值,且有参数的方法。
/// </summary>
/// <param name="ProName"></param>
/// <param name="prams"></param>
/// <param name="dataReader"></param>
public void RunProc(string ProName,SqlParameter[] prams,out SqlDataReader dataReader)

SqlCommand cmd = CreateCommand(ProName,prams);
dataReader = cmd.ExecuteReader(CommandBehavior.CloseConnection);
try



catch(Exception ex)

SystemError.SystemLog(ex.Message);

finally

cmd.Dispose();



/// <summary>
/// 创建cmd的参数
/// 该方法的思路就是按条件生成一个SqlParameter对象。
/// 生成对象后,再给对象赋相应的返回值类型
/// </summary>
/// <param name="ParamName"></param>
/// <param name="DbType"></param>
/// <param name="size"></param>
/// <param name="direction"></param>
/// <param name="Value"></param>
/// <returns></returns>
public SqlParameter CreateParam(string ParamName, SqlDbType DbType, int 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;

param.Value = Value;

return param;


/// <summary>
/// 创建cmd的输入参数
/// </summary>
/// <param name="ParamName"></param>
/// <param name="DbType"></param>
/// <param name="size"></param>
/// <param name="Value"></param>
/// <returns></returns>
public SqlParameter CreateInParam(string ParamName, SqlDbType DbType, int size, object Value)

return CreateParam(ParamName,DbType,size,ParameterDirection.Input,Value);


/// <summary>
/// 创建cmd的输出参数
/// </summary>
/// <param name="ParamName"></param>
/// <param name="DbType"></param>
/// <param name="size"></param>
/// <returns></returns>
public SqlParameter CreateOutParam(string ParamName, SqlDbType DbType, int size)

return CreateParam(ParamName,DbType,size,ParameterDirection.Output,null);


/// <summary>
/// 创建cmd带有返回值的参数
/// </summary>
/// <param name="ParamName"></param>
/// <param name="DbType"></param>
/// <param name="size"></param>
/// <returns></returns>
public SqlParameter CreateReturnParam(string ParamName,SqlDbType DbType, int size)

return CreateParam(ParamName,DbType,size,ParameterDirection.ReturnValue,null);


//开始一个事务
public void BeginTrans()

OpenConnection();

Trans = dbConnection.BeginTransaction(IsolationLevel.Serializable);


public void Commit()

if (Trans != null)

Trans.Commit();



public void Rollback()

if (Trans != null)

Trans.Rollback();



参考技术A ............asdadasdfasdfadbbbbbbbbbbbbbbbbbbbbbbb

参考技术B 自己写SQL Server的客户端?

Laravel 验证 MSSQL

【中文标题】Laravel 验证 MSSQL【英文标题】:Laravel validation MSSQL 【发布时间】:2018-06-21 20:38:04 【问题描述】:

我正在使用 2 个 DB 连接 MySQLMSSQL

我有一个函数需要将数据保存在 MSSQL DB 中。但是我的验证是检查 MySQL 数据库而不是 MSSQL,即使我已经在函数顶部设置了 DB:: 连接,如下所示:

public function store(Request $request)
   

    $databaseConnection = DB::connection('sqlsrv');

 ...

我是否需要将其设置为专门用于验证的其他地方?

【问题讨论】:

【参考方案1】:

如果你在谈论像exists这样的验证规则,你可以设置连接:

'email' => 'exists:sqlsrv.some_table,some_column'

您也可以对unique 规则执行相同的操作。

【讨论】:

@lewis4u 如果您按照我显示的方式指定连接并且它仍然使用错误的连接,请尝试使用php artisan cache:clear 清除配置缓存。如果没有帮助,请显示config/databade.php 文件。 是的,php artisan cache:clear 没有从 .env 文件中获取数据 @lewis4u 很高兴它有帮助。

以上是关于c# mssql 用户验证的主要内容,如果未能解决你的问题,请参考以下文章

使用 C# 进行查询验证

Sencha Touch 登录验证与 MSSQL 数据库

C# 域用户验证问题

在 C# 中验证远程 Active Directory 的用户

附加了mssql2000数据库,怎么新建用户,而且要指定用户权限?

如何在C#中模拟没有密码的Windows身份验证登录用户