[英]how to convert ihttpactionresult return to string
我是 C# 的新手,我試圖從 ihttpactionresult 返回到變量中獲取一個值。
但是我在這方面遇到了困難。 這是我的方法:
[HttpPost]
[Route("GetUserRole")]
public IHttpActionResult GetUserRole()
{
ManageUserData ObjManageUserData = new ManageUserData();
string UserRole = string.Empty;
var dt = ObjManageUserData.GetUserRole(UserPersonalNumber);
if (dt.Rows.Count > 0)
UserRole = dt.Rows[0][0].ToString();
else
UserRole = "User";
return Ok(UserRole);
}
在 UserRole 中,我從一個等於 SMPAG 的表中獲取價值。 我正在嘗試將此值獲取到另一個字符串中的變量,但是我遇到了困難。
另一種方法是:
[HttpPost]
[Route("GetTableValue")]
public IHttpActionResult GetTableValue()
{
try
{
List<UserModel> userModels = new List<UserModel>();
var UserID = UserAdId;
var UserRole = GetUserRole().ToString();
return Ok(UserRole );
}
我試圖從 GetUserRole() function 中獲取值 SMPAG 到 userRole 並進行一些操作,但是除了傳遞的字符串之外,我得到了一些其他值如何在此變量中獲取 SMPAG 的字符串值。 能否請你幫忙?
我認為你以錯誤的方式處理這個問題。 您通常需要將用戶角色作為string
值,對嗎? 但是GetUserRole
web 方法返回IHttpActionResult
。 因此,您有效地生成了一個字符串值,將其包裝起來,然后您想再次打開它以使用它。
引入第三種方法GetUserRoleImplementation
(或任何對您有意義的名稱)將有助於解決此問題:
private string GetUserRoleImplementation()
{
ManageUserData ObjManageUserData = new ManageUserData();
string UserRole = string.Empty;
var dt = ObjManageUserData.GetUserRole(UserPersonalNumber);
if (dt.Rows.Count > 0)
UserRole = dt.Rows[0][0].ToString();
else
UserRole = "User";
}
您可以看到我們已將現有GetUserRole
方法的大部分功能移至此處。 這意味着GetUserRole
現在看起來像這樣:
[HttpPost]
[Route("GetUserRole")]
public IHttpActionResult GetUserRole()
{
string userRole = GetUserRoleImplementation();
return Ok(UserRole);
// or just: return Ok(GetUserRoleImplementation());
}
由於我們不再需要弄清楚如何從IHttpActionResult
中提取字符串值, GetTableValue
現在看起來像這樣:
[HttpPost]
[Route("GetTableValue")]
public IHttpActionResult GetTableValue()
{
try
{
List<UserModel> userModels = new List<UserModel>();
var UserID = UserAdId;
var UserRole = GetUserRoleImplementation();
return Ok(UserRole );
}
...
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.