Ошибка привязки данных с сеткой данных: невозможно привести объект типа «System.Int32» к типу «System.String».C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Гость
 Ошибка привязки данных с сеткой данных: невозможно привести объект типа «System.Int32» к типу «System.String».

Сообщение Гость »

Настройка таблицы Projets.cs для привязки к сетке данных. Я получил ошибку.

Невозможно привести объект типа «System.Int32» к типу «System.String».

Я попробовал добавить в код конвертеры. Проблема заключается в первичном ключе и внешних ключах, определенных в модели. Дело в том, что я не хочу, чтобы они были видны в сетке данных, а вместо этого я получаю атрибуты, определенные в этих моделях, каждый по внешнему ключу, определенному в этой таблице Projet. Возможно ли это?
Я застрял на этом несколько дней, потому что вынужден использовать шаблон MVC вместо MVVM в настольном приложении. Поэтому я был бы признателен за любую помощь, поскольку это мое последнее средство.
Вот мой код Projets.cs:
using Microsoft.EntityFrameworkCore;
using System.ComponentModel.DataAnnotations;
using System.Windows.Controls;
using Projet.Views;

namespace Projet.Models
{
public class Projets
{
[Key]
public int ID_Projet { get; set; }

[Required(ErrorMessage = "Le nom de de projet est obligatoire")]
public string Nom_Projet { get; set; }

public string Description_Projet { get; set; }

[Required]
public string Version_Projet { get; set; }

[Required]
public string Révision_Projet { get; set; }

[Required(ErrorMessage = "La version de projet est obligatoire")]
public string Statut_Projet { get; set; }

//////
public int ID_BDD { get; set; }
public BDDs BDD { get; set; }
//////
public int ID_Environnement { get; set; }
public Environnements Environnement { get; set; }
//////
public int ID_Développeur { get; set; }
public Développeurs Développeur { get; set; }
//////
public int ID_Languages { get; set; }
public Languages Language { get; set; }
//////
public ICollection
ProjetToolbox { get; set; }
//////
public ICollection ProjetSite { get; set; }
//////
public Plannings Planning { get; set; }
}
}

Мой ProjetsController.cs:
using Projet.Models;
using System.Linq;
using System.Collections.Generic;

namespace Projet.Controllers
{
public class ProjetsController
{
private readonly ProjetContext _context;

public ProjetsController()
{
_context = new ProjetContext();
}

public List
GetAllProjets()
{
return _context.Projets.ToList();
}
}

Projets.xaml.cs:
using System;
using System.Collections.Generic;
using System.Windows;
using System.Windows.Controls;
using Projet.Controllers;
using Projet.Models;

namespace Projet.Views
{
public partial class Projets : UserControl
{
private readonly ProjetsController _controller;

public Projets()
{
InitializeComponent();
_controller = new ProjetsController();

LoadData();
}

private void LoadData()
{
try
{
List
projets = _controller.GetAllProjets();

foreach (var projet in projets)
{
// Assuming 'SomeIntegerProperty' is an integer property in your 'Projets' model
string stringValue = projet.ID_Projet.ToString();
string stringValue1 = projet.ID_BDD.ToString();
string stringValue2= projet.ID_Développeur.ToString();
string stringValue3 = projet.ID_Environnement.ToString();
string stringValue4 = projet.ID_Languages.ToString();
// Now you can use 'stringValue' as needed
}

ProjetsData.ItemsSource = projets;
}
catch (Exception ex)
{
MessageBox.Show($"An error occurred while loading data: {ex.Message}", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
}
}
}
}

Projets.xaml:





















Подробнее здесь: https://stackoverflow.com/questions/784 ... e-system-i
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»