I am passing a javascript array via Request.QueryString["cityID"].ToString()
, but it shows me an error of "invalid arguments":
blObj.addOfficeOnlyDiffrent(Request.QueryString["cityID"].ToString(),
Request.QueryString["selectTxtOfficeAr"].ToString());
The method declaration looks like:
public string addOfficeOnlyDiffrent(string[] cityID, string selectTxtOfficeAr) { }
You can pass data, including arrays via the Query String when using NavigationManager to navigate to a different page in your Blazor app.
To query if the array field contains at least one element with the specified value, use the filter { <field>: <value> } where <value> is the element value. To specify conditions on the elements in the array field, use query operators in the query filter document: { <array field>: { <operator1>: <value1>, ... } }
Your method addOfficeOnlyDiffrent
is expecting a string array arguement in cityID
whereas you are passing a single string
type object to your method in call. I believe your cityID
is a single string so you can remove the array from the method declaration. In your method call.
Request.QueryString["cityID"].ToString()
the above represents a single string, not a string array.
If your query string contains a string array, then values are probably in string representation, separated by some character, for example ,
. To pass that string to the method, you can call string.Split
to split the string to get an array.
EDIT: From your comment, that your query string contains:
Request.QueryString["cityID"].ToString() (123456,654311,987654)
You can do the following.
string str = Request.QueryString["cityID"].ToString();
string[] array = str.Trim('(',')').Split(',');
blObj.addOfficeOnlyDiffrent(array,
Request.QueryString["selectTxtOfficeAr"].ToString());
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With