小编Mat*_*ari的帖子

无法将类型字符串隐式转换为byte []

我有一个用加密哈希加密密码的类.

但是如果我想将null传递给类,我会收到以下错误: Cannot implicitly convert type string to byte[]

这是类代码:

public class MyHash
{
    public static string ComputeHash(string plainText, 
                            string hashAlgorithm, byte[] saltBytes)
    {
        Hash Code
    }
}
Run Code Online (Sandbox Code Playgroud)

当我使用该类时,我得到错误:"无法将类型字符串隐式转换为byte []"

//Encrypt Password
byte[] NoHash = null;
byte[] encds = MyHash.ComputeHash(Password, "SHA256", NoHash);
Run Code Online (Sandbox Code Playgroud)

c# string encoding c#-4.0

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

比较2个整数时无法转换lambda表达式

无法将lambda表达式转换为类型'bool',因为它不是委托类型

在if语句中比较2个整数时"if(UserLevelID => dbMinimunlevelID)"

如何将包含计数的变量与另一个整数进行比较?

 //Check if user has enough credits to create ClassCharacter       
        public bool CheckMinimunCreditforClassCharacter(Guid UserID, int ClassCharacterID, int Levelid)
        {

        bool Results = true;

        //Check Character Creation Rules
        int dbMinimunlevelID = 0;
        bool AdditionalCharactersRequired = false;
        int AdditionalCharactersPoints = 0;

        var query = (from o in db.ClassCharacters
                     where o.ClassCharacterID == ClassCharacterID
                     select o);   

        foreach (var v in query)
        {
            dbMinimunlevelID = v.MinimumPoints;
            AdditionalCharactersRequired = v.AdditionalCharactersRequired;
            AdditionalCharactersPoints = v.AdditionalCharactersPoints;
        }

        if (dbMinimunlevelID > 0)
        {
            //Check User existing …
Run Code Online (Sandbox Code Playgroud)

c# linq-to-entities

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

在linq到实体中选择最大值

我试图为用户选择MAX LevelId值,然后将该值赋给变量.

在纯SQL中,等效的是:

SELECT        MAX(LevelID) AS MaxLevel
FROM            Character
WHERE        (UserId = 'John')


//Check User existing Characters max level per user
Run Code Online (Sandbox Code Playgroud)

int UserLevelID = 0;

var userQuery = (from o in db.Characters
where o.UserId == UserID
      select o);
Run Code Online (Sandbox Code Playgroud)

UserLevelID = userQuery.Max(LevelID);

这就是问题所在.我不知道如何提取levelID的最大值

linq entity-framework asp.net-mvc-3

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

@ Html.EditorFor的硬代码值

我的MVC 3应用程序需要创建新用户.

我想在视图中为ApplicationId文本框硬编码ApplicationId.

有谁知道如何做到这一点?

create方法不会获取任何数据:

public ActionResult Create()
{
    return View();
}


  <div class="editor-label">
            @Html.LabelFor(model => model.ApplicationId)
        </div>
        <div class="editor-field">
            @Html.EditorFor(model => model.ApplicationId)
            @Html.ValidationMessageFor(model => model.ApplicationId)
        </div>
Run Code Online (Sandbox Code Playgroud)

更新

有一个选择.使用隐藏字段.

    @Html.Hidden("ApplicationId", "ep006964-83a8-4f40-a569-d2d3296f005b")
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc-3

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

"字符串"在当前上下文中不存在

我将以下函数从vb.net转换为c#,但我无法弄清楚这一点.

错误4当前上下文中不存在名称"字符串"

public string GetBetween(string StringText)
    {
        string functionReturnValue = null;

        string TMP = null;
        string FromS = null;
        string ToS = null;
        FromS = "<Modulus>";
        ToS = "</Modulus>";

        TMP = Strings.Mid(StringText, Strings.InStr(StringText, FromS) + Strings.Len(FromS), Strings.Len(StringText));
        TMP = Strings.Left(TMP, Strings.InStr(TMP, ToS) - 1);

        functionReturnValue = TMP;

        return functionReturnValue;

    }
Run Code Online (Sandbox Code Playgroud)

c#-4.0

0
推荐指数
1
解决办法
7466
查看次数

MVC 3在保存到DB之前检查重复项,显示重复的错误消息

我需要检查重复项,然后在我的控制器内的创建和编辑方法中保存到数据库.然后我需要显示重复的错误消息而不是一般的错误消息.

我对副本的定义是:userid + Code1ID + Code2ID + Code3ID + Code4ID.

问题:如果上述值组合已经存在,如何检查重复项?

表名

 Character:
CharacterID int 
UserID int
Code1ID int
Code2ID int
Code3ID int
Code4ID int
Name Varchar(40)
Run Code Online (Sandbox Code Playgroud)

我的主键由UserID + Code1ID + Code2ID + Code3ID + Code4ID组成.这可以保证不会在数据库中输入重复项.但是我返回的错误消息是一般错误消息.

我需要先检查重复项,然后根据重复项返回警告消息或错误消息.

这是控制器内部的编辑方法

  //
        // GET: /Character/Edit/5

        public ActionResult Edit(int id)
        {
            Character character = db.Characters.Find(id);
        PopulateUserIDDropDownList(character.UserID);
            PopulateCode1IDDropDownList(character.Code1ID);
            PopulateCode2IDDropDownList(character.Code2ID);
            PopulateCode3IDDropDownList(character.Code3ID);
            PopulateCode4IDDropDownList(character.Code4ID);
            return View(character);
        }

        //
        // POST: /Character/Edit/5

        [HttpPost]
        public ActionResult Edit(Character character)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    db.Entry(character).State = EntityState.Modified;
                    db.SaveChanges();
                    return RedirectToAction("Index"); …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc-3

0
推荐指数
1
解决办法
6945
查看次数