小编Ala*_*aya的帖子

备份权限

我在服务器上创建了一个将访问某些数据库的新用户.

但是当我去备份或恢复数据库时,我得到错误:

C:\ Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Backup
无法访问服务器上的指定路径或文件.验证您是否具有必要的安全权限以及路径或文件是否存在.....................

错误显示在我的系统中的任何其他路径.即使是那些用户和服务帐户具有完全控制权限的用户.

但是,如果我输入完整路径并单击确定,它会抱怨它无法显示,但它会备份或恢复数据库.只是不显示路径的树视图.

如果我使用该sa帐户执行操作,该对话框将显示所有路径而无需投诉.

PS:已经添加了该db_backoperator角色的用户.

需要什么权限?

sql-server database-backups sql-server-2008

25
推荐指数
2
解决办法
6万
查看次数

截取按钮单击页面加载

我需要编写一个代码,可以拦截某个按钮(asp按钮)的单击而不是执行某些代码,如果方法返回true,则调用原始单击.

所以要点是:

1-我不知道如何保存原始点击.

2-确定单击的按钮.

例如:

    protected void Page_Load(object sender, EventArgs e)
    {
        var b = getButtonThatWasClicked();

        var originalClick = b.Click;

        if(callSomeMethod(b))
            originalClick(null,null);
    }
Run Code Online (Sandbox Code Playgroud)

编辑:

好设法得到点击这样做的按钮...现在我需要阻止原来的点击被调用.下面的方法没有奏效.即使重写原始点击到新的处理程序,旧的处理程序也会被调用并执行.事情ASP.NET读取它并制作类似调用事件的堆栈来调用.即使处理程序更改堆栈中的旧仍然.

    public void ButtonsTestMethod()
    {
        var listOfButtons = listaDeBotes.Where(b => b.CommandName != "");

        foreach (var button in listOfButtons)
        {
            if (Request.Form[button.UniqueID] != null)
            {
                var buttonFromRequest = Request.Form[button.UniqueID];
                if (buttonFromRequest == null)
                    continue;

                if (button.CommandName != "xxx")
                { 
                    //validate things
                    //if(TemPermissao(Tela,GetAcaoDoBotao(botao.CommandName)))
                    //if(!canexecuteSomething())
                    button.Click += new EventHandler(defaultClick);   
                }
            }
        }
    }

    void defaultClick(object sender, EventArgs e)
    { …
Run Code Online (Sandbox Code Playgroud)

c# asp.net delegates event-handling c#-4.0

3
推荐指数
1
解决办法
4910
查看次数

如何在ActionFilterAttribute中强制请求失败

我有一个继承的类ActionFilterAttribute.

它解密了调用者加密的请求中的一些查询字符串属性.这可以确保我的WebAPI方法只接收"好"参数.这很好用.

如果参数未加密,我需要做的并且没有成功的是否定/失败上下文(请求).

如何强制终止请求?我正在做我的逻辑:

public override void OnActionExecuting(ActionExecutingContext context)
Run Code Online (Sandbox Code Playgroud)

已经尝试将响应设置为401,但这不起作用:

//Negate the access by default
 context.HttpContext.Response.StatusCode = 401;
Run Code Online (Sandbox Code Playgroud)

asp.net-core-mvc asp.net-core

2
推荐指数
1
解决办法
2075
查看次数