Ошибка исключения аргумента System.argument
Я получаю эту ошибку:
system.argumentexception UserName parameter does not exist on this report
Вот мой код, в котором я объявляю свою переменную. Я проверил все случаи, и все в правильном порядке. Чего мне не хватает?
using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Data; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.HtmlControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.WebControls; using System.Security.Principal; using System.Data.SqlClient; using System.Data.Sql; using System.Configuration; using System.Xml.Linq; using Microsoft.Reporting.WebForms; namespace CharityWorks.Membership { public partial class CurrentMembers: System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { var username = User.Identity.Name; var reportname = "Current Members"; List<ReportParameter> reportParams = new List<ReportParameter>(); reportParams.Add(new ReportParameter("UserName", username)); reportParams.Add(new ReportParameter("ReportName", reportname)); ReportViewer1.ServerReport.SetParameters(reportParams); } } } }
Что я уже пробовал:
Поиск в Google, поиск кода проекта.
Philippe Mori
UserName
вероятно, это не определено в самом отчете. Параметры должны совпадать с обеих сторон.
Member 10379103
Я скопировал параметр из отчета, чтобы убедиться, что они совпадают. Я объявляю переменную и устанавливаю ее в user.identity.name...это работало, но прекратилось.
Philippe Mori
Сравните текущий код с кодом, который работал... и убедитесь, что определение отчета не было каким-либо образом изменено.
Member 10379103
Занимаясь этим сейчас...пока ничего не нашел.
Patrice T
Найдите то, что изменилось, мы не можем вам в этом помочь.
Member 10379103
Я просмотрел все страницы и код позади. Как ни странно, некоторые страницы работают, а некоторые отображают сообщение об ошибке. Тот же код, который я опубликовал в своем вопросе, существует на всех страницах.
Member 10379103
Я просмотрел все страницы и код позади. Как ни странно, некоторые страницы работают, а некоторые отображают сообщение об ошибке. Тот же код, который я опубликовал в своем вопросе, существует на всех страницах.
Philippe Mori
Тогда, вероятно, определение отчета отличается для некоторых страниц.
Member 10379103
Как бы я проверил определения отчета? Эти отчеты были созданы другим разработчиком и прекрасно работают на производственном сервере - просто не на сервере разработки; поэтому я не могу изменить их, не затрагивая производственные отчеты. Разработка и производство используют один и тот же Сервер отчетов.
Member 10379103
Я думаю, что могу ответить на свой собственный вопрос - либо просмотреть rdl, написанный предыдущими программистами, либо запросить таблицу каталога. Скорее всего, я добьюсь большего успеха, просматривая и обновляя rdl или обновляя порядок классов в коде, чтобы он соответствовал порядку переменных в rdl.
В любом случае, спасибо за помощь и идеи. Это выглядело так, как будто я пытался сделать все логично - это просто одна из тех унаследованных проблем, которые возникали, когда я пытался получить обновленную, чистую копию для тестирования.