Я работаю над приложением Silverlight, которое позволяет пользователям заполнять общие формы.
На моем mainpage.xaml у меня есть 4 кнопки, которые позволяют пользователю создать новую форму. У меня есть следующий код в обработчике события клика
FormsDS t = new FormsDS();
Store s = new Store();
var i = (from j in t.Stores
where j.StoreManager.Contains(WebContext.Current.User.Name)
select j.ID);
form newxferform = new form
{
xfertype = 1,
createdate = DateTime.Now,
createdby = WebContext.Current.User.Name,
assignedto = WebContext.Current.User.Name,
Store = Int32.Parse(i.ToString()),
xferfrom = Int32.Parse(i.ToString()),
appovalstatus = 1,
ronum = "0",
hide = 0
};
t.forms.Add(newxferform);
t.SubmitChanges(createop =>
{
Uri target = new Uri("/views/TransferForm.xaml?FormID=" + newxferform.id, UriKind.Relative);
ContentFrame.Navigate(target);
}, null);
FormsDS — это мой контекст данных. Я хотел бы взять значение i из запроса вверху и присвоить его значениям Store и xferfrom в newxferform. Однако, когда я запускаю его, я получаю «Входная строка имеет неправильный формат». Если я не выполняю Int32.Parse, я получаю сообщение «Невозможно неявно преобразовать тип System.Collections.Generic.IEnumerable» в «?int». Я вообще этого не понимаю, так как все столбцы в БД не равны нулю. Я пытался написать try catch для обработки нулевых значений, но не могу понять, почему значение возвращается как нулевое, имя пользователя точно соответствует столбцу storemanager. Я должен получить результат.
Я пробовал несколько разных способов, и я не могу понять.
Мне просто нужно взять поле идентификатора из таблицы с именем магазины, где столбец StoreManager равен текущему вошедшему в систему пользователю, и присвоить его полю хранилища и xferfrom в таблице с именем формы при создании формы.
Я думаю, что это делает это сложнее, чем хотелось бы, так это то, что у меня нет DataContext, определенного где-либо в xaml на странице. Это просто навигационная страница. Данные обрабатываются на страницах, загруженных в навигационный фрейм.
Любая помощь будет принята с благодарностью.
Спасибо,
Нил