问题描述
代码:
public bool SharedUsers(string strPermission,int userId)
{
string sharedUsers =;
bool isShared = false;
if(strPermission ==|| strPermission == null)
{
isShared = false;
}
else
{
JObject objParam = JObject.Parse(strPermission);
JToken aggregateToken = objParam.SelectToken(specificUsers);
foreach(在aggregateToken中的var项目)
{
sharedUsers + = item.SelectToken(users)。值< string>()+,;
}
if(sharedUsers!= string.Empty)
{
sharedUsers = sharedUsers.TrimEnd(',')。TrimStart (',');
if(sharedUsers!=)
{
int [] arrUsers = sharedUsers.Split(', ')。选择(x => 。Convert.ToInt32(X))ToArray的(); //这里发生了错误
isShared =(arrUsers.Contains(userId)|| arrUsers.Any(x => AppSession.User.UserGroups.Contains(x)));
}
}
}
返回isShared;
}
我尝试了什么:
输入字符串不是发生了正确的格式错误
code:
public bool SharedUsers(string strPermission, int userId)
{
string sharedUsers = "";
bool isShared = false;
if (strPermission == "" || strPermission == null)
{
isShared = false;
}
else
{
JObject objParam = JObject.Parse(strPermission);
JToken aggregateToken = objParam.SelectToken("specificUsers");
foreach (var item in aggregateToken)
{
sharedUsers += item.SelectToken("users").Value<string>() + ",";
}
if (sharedUsers != string.Empty)
{
sharedUsers = sharedUsers.TrimEnd(',').TrimStart(',');
if (sharedUsers != "")
{
int[] arrUsers = sharedUsers.Split(',').Select(x => Convert.ToInt32(x)).ToArray(); //here the error is occured
isShared = (arrUsers.Contains(userId) || arrUsers.Any(x => AppSession.User.UserGroups.Contains(x)));
}
}
}
return isShared;
}
What I have tried:
Input string was not a correct format error occured
推荐答案
string sharedUsers = "1,2,3,5,4,5,6,7,8,10,";
int[] arrUsers = sharedUsers.Split(new string[] { "," }, System.StringSplitOptions.RemoveEmptyEntries).Select(x => System.Convert.ToInt32(x)).ToArray();
问候,
Imdadhusen
Regards,
Imdadhusen
这篇关于输入字符串格式不正确的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!