Форум программистов, компьютерный форум, киберфорум
C#: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
4 / 4 / 4
Регистрация: 29.11.2014
Сообщений: 131

При попытке создать базу MySQL выбивает исключение FormatException

12.08.2020, 20:44. Показов 858. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Полный текст исключения:
Кликните здесь для просмотра всего текста
System.TypeInitializationException: Инициализатор типа "MarketBotProject.AppSettings" выдал исключение. ---> System.FormatException: Входная строка имела неверный формат.

в System.Number.ParseDouble(String value, NumberStyles options, NumberFormatInfo numfmt)

в System.Convert.ToDouble(String value)

в MySql.Data.EntityFramework.MySqlMigratio nSqlGenerator.Generate(CreateIndexOperat ion op)

в MySql.Data.EntityFramework.MySqlMigratio nSqlGenerator.<.ctor>b__22_4(MigrationOp eration op)

в MySql.Data.EntityFramework.MySqlMigratio nSqlGenerator.Generate(IEnumerable`1 migrationOperations, String providerManifestToken)

в System.Data.Entity.Migrations.DbMigrator .GenerateStatements(IList`1 operations, String migrationId)

в System.Data.Entity.Migrations.DbMigrator .ExecuteOperations(String migrationId, VersionedModel targetModel, IEnumerable`1 operations, IEnumerable`1 systemOperations, Boolean downgrading, Boolean auto)

в System.Data.Entity.Migrations.DbMigrator .AutoMigrate(String migrationId, VersionedModel sourceModel, VersionedModel targetModel, Boolean downgrading)

в System.Data.Entity.Migrations.DbMigrator .Upgrade(IEnumerable`1 pendingMigrations, String targetMigrationId, String lastMigrationId)

в System.Data.Entity.Migrations.DbMigrator .UpdateInternal(String targetMigration)

в System.Data.Entity.Migrations.DbMigrator .<>c__DisplayClass42_0.<Update>b__0()

в System.Data.Entity.Migrations.DbMigrator .EnsureDatabaseExists(Action mustSucceedToKeepDatabase)

в System.Data.Entity.Migrations.DbMigrator .Update(String targetMigration)

в System.Data.Entity.Internal.DatabaseCrea tor.CreateDatabase(InternalContext internalContext, Func`3 createMigrator, ObjectContext objectContext)

в System.Data.Entity.Internal.InternalCont ext.CreateDatabase(ObjectContext objectContext, DatabaseExistenceState existenceState)

в System.Data.Entity.Database.CreateIfNotE xists()

в MarketBotProject.ContextClass..ctor() в T:\VS\Projects\MarketBotProject\Classes\ ContextClass.cs:строка 20

в MarketBotProject.AppSettings..cctor() в T:\VS\Projects\MarketBotProject\AppSetti ngs.cs:строка 18

--- Конец трассировки внутреннего стека исключений ---

в MarketBotProject.Form1.Init(String token) в T:\VS\Projects\MarketBotProject\Form1.cs :строка 49


Класс контекста:
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
namespace MarketBotProject
{
    using MySql.Data.EntityFramework;
    using MySql.Data.MySqlClient;
    using System;
    using System.Collections.Generic;
    using System.Data.Common;
    using System.Data.Entity;
 
    [DbConfigurationType(typeof(MySqlEFConfiguration))]
    public class ContextClass : DbContext
    {
        public ContextClass() : base("name=Model1")
        {
            string myConnectionString = "server=localhost;port=3306;user id=root;password=*******;database=MarketBotDB";
            using (MySqlConnection connection = new MySqlConnection(myConnectionString))
            {
                using (ContextClass contextDB = new ContextClass(connection, false))
                {
                    contextDB.Database.CreateIfNotExists();
                }
            }
        }
 
        public ContextClass(DbConnection existingConnection, bool contextOwnsConnection) : base(existingConnection, contextOwnsConnection)
        {
        }
 
        public virtual DbSet<Category> Categories { get; set; }
        public virtual DbSet<Item> Goods { get; set; }
        public virtual DbSet<BUser> Users { get; set; }
        public virtual DbSet<PartnershipRequest> PartnershipRequests { get; set; }
        public virtual DbSet<Promocode> Promocodes { get; set; }
        public virtual DbSet<xPub> xPubs { get; set; }
        public virtual DbSet<HPayment> HPayments { get; set; }
    }
 
    public class Category
    {
        public int Id { get; set; }
        public string Name64 { get; set; }
        public string Parent64 { get; set; } = null;
        public double Price { get; set; } = -1;
    }
 
    public class Item
    {
        public int Id { get; set; }
        public int CategoryId { get; set; }
        public string Text64 { get; set; }
    }
 
    public class Order
    {
        public int Id { get; set; }
        public int BUserId { get; set; }
        public Item Product { get; set; } = new Item();
        public int Count { get; set; } = 1;
    }
 
    public class Balance
    {
        public int Id { get; set; }
        public int BUserId { get; set; }
        public double Available { get; set; } = 0;
        public double Frozen { get; set; } = 0;
        public double Spent { get; set; } = 0;
    }
 
    public class BUser
    {
        public int Id { get; set; }
        public Promocode Promo { get; set; } = null;
        public List<Order> Cart { get; set; } = new List<Order>();
        public List<int> OrderIds { get; set; } = new List<int>();
        public Balance CommonBalance { get; set; } = new Balance();
        public Balance PartnerBalance { get; set; } = new Balance();
        public BTCAddress Address { get; set; } = null;
        public int Referrals { get; set; } = 0;
        public int Role { get; set; } = 0;
        public string RoleDescription64 { get; set; } = "";
        public string Page { get; set; } = "Default";
        public Category Cat { get; set; } = null;
    }
 
    public class PartnershipRequest
    {
        public int Id { get; set; }
        public int BUserId { get; set; }
        public string Username64 { get; set; }
        public string Nickname64 { get; set; }
        public double Sum { get; set; } = 0;
        public string Address64 { get; set; }
    }
 
    public class Promocode
    {
        public int Id { get; set; }
        public string Code64 { get; set; }
        public int OwnerId { get; set; }
        public bool Used { get; set; } = false;
    }
    
    public class xPub
    {
        public int Id { get; set; }
        public string Key64 { get; set; }
        public List<BTCAddress> Addresses { get; set; } = new List<BTCAddress>();
    }
 
    public class BTCAddress
    {
        public int Id { get; set; }
        public string Address { get; set; }
        public bool Blocked { get; set; } = false;
        public DateTime Assigned { get; set; } = DateTime.Now;
        public double StartedBalance { get; set; } = 0;
    }
 
    public class HPayment
    {
        public int Id { get; set; }
        public int BUserId { get; set; }
        public string Username64 { get; set; }
        public string Nickname64 { get; set; }
        public double BTC { get; set; } = 0;
        public double USD { get; set; } = 0;
        public DateTime DT { get; set; } = DateTime.Now;
        public List<Item> Items { get; set; } = new List<Item>();
    }
}
Что тут может быть не так? Какое значение Double софтина пытается спарсить и получает исключение? Как это можно решить?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
12.08.2020, 20:44
Ответы с готовыми решениями:

При попытке осуществить миграцию базы данных возникает исключение "FormatException"
Здравствуйте! При попытке осуществить миграцию базы данных возникает исключение &quot;FormatException&quot;. ( в...

Ошибка при попытке добавления записи в базу данных (MySQL)
Qt 4.8.5, MySQL Community Server (mysql-5.5.23-win32.msi). Собрал драйвер под 10 студию (gmake, nmake). Данные с базы получаю, но добавить...

Ошибка при попытке создать базу MS SQL. Неверный Server Name
Короче говоря, пытаюсь создать базу данных, и Server Name меня не пропускает. Вводил туда и имя компа, и как в книге сказано (local) и...

5
Эксперт .NET
 Аватар для Usaga
14314 / 9399 / 1355
Регистрация: 21.01.2016
Сообщений: 35,434
13.08.2020, 05:38
allCrowley, эм. Вы считаете нормальным в конструкторе класса создавать объект этого же класса, чтобы обратиться к свойству, которое и так уже доступно?
0
4 / 4 / 4
Регистрация: 29.11.2014
Сообщений: 131
13.08.2020, 18:20  [ТС]
Цитата Сообщение от Usaga Посмотреть сообщение
allCrowley, эм. Вы считаете нормальным в конструкторе класса создавать объект этого же класса, чтобы обратиться к свойству, которое и так уже доступно?
Да, считаю полностью нормальным, в отличие от флуда в теме.
Тем более, что эта часть кода скопирована из солюшена и до этого не устанавливалось даже подключение. Впрочем, если убрать создание объекта класса, ничего нового не случится. Это не решение проблемы. Вы еще до грамматических ошибок докапайтесь, или за стандарты оформления кода предъявите.
0
1497 / 1238 / 245
Регистрация: 04.04.2011
Сообщений: 4,363
13.08.2020, 18:49
А пароль - 7 зведочек - это так надо ?

Я бы не игнорировал реплику Usaga, т.к. она вполне разумна.

Ваш код нарушает принцип SOLID. Не знаю из какого солюшина Вы его скопипастили, но выглядит он немного нелепо.
Как НАДО писать - посмотрите на примере EDM (Entity framework) - там все генерится абсолютно "по теории", т.е. отдельно "котлеты" (классы модели - декларация), отдельно "мухи" (контекст модели - имплементация).
У Вас же все в одном стакане

Добавлено через 6 минут
И немного логики.
Подумайте: контекст модели как бы предполагает имплементацию работы с уже имеющейся моделью, да ?
Создание же самой модели (т.е. БД) - это как бы вне. Т.е. перед созданием самого экземпляра контекста БД уже должна быть.

Ну для сравнения - вы идете в магазин купить хлебца, а если его там нет, то тут же разжигаете печь и замешиваете тесто

Просто логика, ничего личного
0
4 / 4 / 4
Регистрация: 29.11.2014
Сообщений: 131
13.08.2020, 20:30  [ТС]
Цитата Сообщение от MsGuns Посмотреть сообщение
А пароль - 7 зведочек - это так надо ?
Да. Соединение устанавливается успешно, раньше и с этим были проблемы.
Цитата Сообщение от MsGuns Посмотреть сообщение
Я бы не игнорировал реплику Usaga, т.к. она вполне разумна.
Я и не игнорирую. Я бы в любом случае убрал это, когда всё заработает, как и ненужные неймспейсы(хотя их GC удаляет при компиляции, я все равно их чищу). Тоже самое я делаю и с условиями, которые приводят к выполнению 1 команды: я убираю автоматически созданные фигурные скобки, и там где это удобно - переношу условие и действие на одну строку, чтобы на экране помещалось больше кода и он был более читабельным(для меня).
Цитата Сообщение от MsGuns Посмотреть сообщение
Ваш код нарушает принцип SOLID. Не знаю из какого солюшина Вы его скопипастили, но выглядит он немного нелепо.
Как НАДО писать - посмотрите на примере EDM (Entity framework) - там все генерится абсолютно "по теории", т.е. отдельно "котлеты" (классы модели - декларация), отдельно "мухи" (контекст модели - имплементация).
У Вас же все в одном стакане
Добавлено через 6 минут
И немного логики.
Подумайте: контекст модели как бы предполагает имплементацию работы с уже имеющейся моделью, да ?
Создание же самой модели (т.е. БД) - это как бы вне. Т.е. перед созданием самого экземпляра контекста БД уже должна быть.
Ну для сравнения - вы идете в магазин купить хлебца, а если его там нет, то тут же разжигаете печь и замешиваете тесто
Просто логика, ничего личного
Это все великолепно, но размеры детородного органа, который я кладу на все принципы и стандарты, если они мне не подходят даже представить трудно. Если я захочу обмазаться SOLID и выучить все стандарты оформления кода, я наверное для этого пойду в офис работать, по этой же причине комментить собственный код буду, начну использовать системы контроля версий, проджект менеджеры, и все остальные очень удобные вещи, которые так любит сообщество программистов. Но пока эти времена не наступили, я буду писать код как мне удобно, и печка у меня будет стоять в одном здании с магазином, коль и печка и магазин - мои, не обессудьте.
Я нахожу такой подход наиболее удобным и приемлимым, и пусть в меня первым бросит камень тот, кто не игнорирует хотя бы часть из того что общепринято считают очень нужным и полезным
0
1497 / 1238 / 245
Регистрация: 04.04.2011
Сообщений: 4,363
13.08.2020, 21:22
allCrowley,

Конечно, можно класть "детородный" орган на все законы физики и мочиться против ветра, ездить на велосипеде с квадратными колесами, печь хлеб в магазине, а отовариваться в пекарне. Если это "удобно"

Но дело Ваше. "Кому и кобыла невеста" (с)
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
13.08.2020, 21:22
Помогаю со студенческими работами здесь

При попытке запуска данного приложения на другом компьютере выбивает ошибку
Сделал программу, работает на ура. В ней подключена библиотека IrrKlang.dll Но при попытке запуска данного приложения на другом...

Файловый ввод вывод: при чтении курса и номера карточки происходит исключение FormatException
Делаю файловый ввод вывод, но почему-то при чтении курса и номера карточки происходит исключение FormatException, причем если в дэбагере...

У меня наверн вирус при попытке включить exe файлы выбивает не является приложением win32
У меня наверн вирус при попытке включить exe файлы выбивает не является приложением win32 антивирусы не помогают пробовал нодом каспером...

Необработанное исключение типа "System.FormatException" при приведении типов
Не работает с double double prais; private void F() { switch(cBox.SelectedIndex) { ...

Выбрасывается исключение при попытке подключения к БД
При запуске кода выдает исключение, classpath настроил. Не знаю, что делать. В чем может быть проблема? import java.sql.*; import...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Функция заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru