小编Spo*_*sST的帖子

如果用户无权采取行动,如何隐藏操作链接?

@if (Roles.IsUserInRole("Administrators"))
{
  <li>@Html.ActionLink("Create New", "Create")</li>
}
Run Code Online (Sandbox Code Playgroud)

我为用户提供了很多角色,并且可以访问多个角色.

在很多地方改变if语句是非常困难的 - 这是一种仅基于隐藏actionlink的方法Athorize(Roles="Administrator, SomethingElse")吗?

也许有一种方法可以编写自定义帮助程序来检查用户权限并使用它而不是Html.Actionlink?

asp.net-mvc

10
推荐指数
2
解决办法
7133
查看次数

存储过程返回null作为输出参数

我有stored procedure,它在MS SQL管理工作室很棒.

当我尝试在VS行中使用它时返回正常,但输出参数的值为NULL.

SqlCommand cmd = new SqlCommand("proc_name", conn);
cmd.CommandType = CommandType.StoredProcedure;

cmd.Parameters.Add(new SqlParameter("@p_SomeVal", SqlDbType.Int));
cmd.Parameters["@p_SomeVal"].Direction = ParameterDirection.Output;

rdr = cmd.ExecuteReader();
//...process rows...

if (cmd.Parameters["@p_SomeVal"].Value != null)
SomeVal = (int)cmd.Parameters["@p_SomeVal"].Value;
Run Code Online (Sandbox Code Playgroud)

cmd.ExecuteNonQuery(); 有相同的结果.

USE [db_name]
GO

DECLARE @return_value int,
    @p_SomeValue int

EXEC    @return_value = [dbo].[Proc_name]
    @p_InputVal = N'aa',
    @p_SomeValue = @p_SomeValue OUTPUT

SELECT  @p_SomeValue as N'p_SomeValue'

SELECT  'Return Value' = @return_value

GO
Run Code Online (Sandbox Code Playgroud)

c# sql stored-procedures

8
推荐指数
1
解决办法
1万
查看次数

标签 统计

asp.net-mvc ×1

c# ×1

sql ×1

stored-procedures ×1