更改过期密码而不使用"密码已过期"对话框

Nik*_*yes 15 .net c# sql-server

我正在使用Sql Server数据库登录帐户登录我的应用程序.但是,当用户的密码过期时,我只能使用"错误:18488"捕获错误消息并向用户显示消息.

当我使用密码过期的帐户使用Sql Server Management Studio登录时,会出现一个要求我更改密码的对话框.

有没有办法允许我的应用程序用T-Sql语句更改过期的密码?

Nik*_*yes 7

我在这里找到了解决方案,我用过SqlConnection.ChangePassword().

这是代码:

class Program
{
    static void Main(string[] args)
    {
        System.Data.SqlClient.SqlConnection.ChangePassword(
        "Data Source=a_server;Initial Catalog=a_database;UID=user;PWD=old_password", 
       "new_password");
    }
}
Run Code Online (Sandbox Code Playgroud)

希望它也能帮助别人.:)