Skip to content

Улучшения (enhancements / refactor) #2

@Mark65537

Description

@Mark65537

Надежность БД

  • Вынести строку подключения в App.config () вместо хардкода.
  • Использовать using/Dispose для SqlConnection, SqlCommand, SqlDataReader (или хранить подключение, но аккуратно управлять временем жизни).
  • Обернуть сохранение в транзакцию и/или делать MERGE/TRUNCATE + bulk insert в одной транзакции.
  • Параметризовать SQL (@lat, @lng) вместо строковой интерполяции.

Корректный тип данных координат

  • Заменить text на decimal(9,6) (или float, но decimal обычно лучше для координат).
  • Хранить значения в одном формате и парсить/форматировать через CultureInfo.InvariantCulture.

Деплой/запуск

  • Скрипт создания БД:
    либо включить как ресурс,
    либо вычислять путь относительно AppDomain.CurrentDomain.BaseDirectory,
    либо отказаться от автосоздания и оставить явный шаг в инструкции.

  • Разделение скрипта по GO сейчас “наивное” (чувствительно к регистру/вхождениям в тексте). Лучше парсить по строкам, где GO стоит отдельно.

Зависимости/размер проекта

  • В MapWithMarkers.csproj подключено много библиотек (включая EF/SQLite/Azure), но в коде используется только System.Data.SqlClient + GMap.NET. Это увеличивает сложность сборки и вероятность конфликтов версий.
    В идеале: оставить только реально используемые пакеты.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions