powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Ошибка Не удалось привести тип объекта "System.Int32" к типу "System.String". в foreach
4 сообщений из 4, страница 1 из 1
Ошибка Не удалось привести тип объекта "System.Int32" к типу "System.String". в foreach
    #38915303
Фотография Алексей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день

Изучаю LinqToSql. Сделал пример аналогичный книге:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Data.Linq;
using System.Data.Linq.Mapping;
using System.Text;
namespace ConsoleApplication1
{
    [Table(Name = "Person.Contact")]
    public class m_Contact
    {
        private string _ContactID;
        [Column(IsPrimaryKey = true, Storage = "_ContactID")]
        public string ContactID
        {
            get { return this._ContactID; }
            set { this._ContactID = value; }
        }
        private string _LastName;
        [Column(Storage = "_LastName")]
        public string LastName
        {
            get { return this._LastName; }
            set { this._LastName = value; }
        }
    }
    internal class Program
    {
        private static void Main(string[] args)
        {
            DataContext db =
                new DataContext(
                    @"Server=xxx.xxx.xxx.xxx;Initial Catalog=AdventureWorks;User ID=xxxxxx;Password=xxxxxx;Trusted_Connection=False;");
            Table<m_Contact> test = db.GetTable<m_Contact>();
            db.Log = Console.Out;
            IQueryable<m_Contact> query = from cont in test
                        where cont.LastName == "Adams"
                        select cont;

            foreach (m_Contact item in query)
            {
                Console.WriteLine("ID={0}", item.LastName);
            }
            Console.ReadLine();
        }
    }
}



При выводе данных в консоль foreach выдает: Не удалось привести тип объекта "System.Int32" к типу "System.String".

Не могу понять, в чем ошибка. Помогите пожалуйста.
Заранее спасибо
...
Рейтинг: 0 / 0
Ошибка Не удалось привести тип объекта "System.Int32" к типу "System.String". в foreach
    #38915308
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей,
Ну, видимо, потому что _ContactID в БД имеет тип Int...
...
Рейтинг: 0 / 0
Ошибка Не удалось привести тип объекта "System.Int32" к типу "System.String". в foreach
    #38915310
Lelouch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей,

private string _ContactID;
[Column(IsPrimaryKey = true, Storage = "_ContactID")]
public string ContactID
{
get { return this._ContactID; }
set { this._ContactID = value; }
}

Не тут?
...
Рейтинг: 0 / 0
Ошибка Не удалось привести тип объекта "System.Int32" к типу "System.String". в foreach
    #38915548
Фотография Алексей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lelouch,

да,блин, увлекся набором кода и прошляпил. Спасибо. все заработало
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Ошибка Не удалось привести тип объекта "System.Int32" к типу "System.String". в foreach
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]