我想使用我的控制台应用程序登录MyBB论坛,但是我的代码出错了
' postData'的默认参数值必须是编译时常量
如果我将用户名和密码设置为常量字符串,我可以很容易地修复它,但是我不能使用Console.ReadLine();所以我必须硬编码用户名和密码,我认为这不是一个好主意。
这是我的代码:
<div ng-repeat="order in itemorders">
<div class="order-lis-box border-radius">
<div class="up line overflow-hidden text">
<div class="fl black mb10">Order No. <span>{{ order.orderId }}</span><br><span class="capitalize grey F14 bold">Rs. {{ order.Total }}</span></div>
<div class="custom-datetime text-right">{{ order.dateCreated }}</div>
</div>
.
.
.
</div> <!-- order-lis-box -->
答案 0 :(得分:1)
为什么首先为它设置默认值?这不是函数的工作方式!
使用单独的参数并在函数内执行字符串连接。
public string MakePostRequest(string url, string Username, string Password, string ForumUrl)
{
string postData = "username=" + Username + "&password=" + Password + "&remember=yes&submit=Login&action=do_login&url=" + ForumUrl + "member.php?action=login"
...
}
对于名称为泛型的方法为&#34; MakePostRequest&#34;拥有默认URL或默认POST数据听起来很奇怪。
说实话,我希望它只接受一个URL和POST数据的映射,然后由调用者传递该请求的正确数据。
答案 1 :(得分:0)
C#允许设置常量以外的默认值,因此您不能使用字段/其他参数。对于url
,这是可以的,因为这是一个常数值。 <{1}}的串联字符串是不允许的。
选项是将默认值设置为postData
,并在方法中检查它。 允许:
null