SqlDbType и география - PullRequest
       1

SqlDbType и география

8 голосов
/ 17 сентября 2010

Какое перечисление SqlDbType я должен использовать, когда мой столбец имеет тип Geography?Я использую MS SQL Server 2008 R2.

Именно это я и ищу:

// ADO.net - what do I use for the SqlDbType when it's defined 
// as Geography in the stored proc
SqlCommand command = new SqlCommand();
command.CommandText = "dbo.up_Foobar_Insert";
command.CommandType = CommandType.StoredProcedure;

command.Parameters.Add("@SomeGeographyType", SqlDbType.????);

Ответы [ 2 ]

12 голосов
/ 19 октября 2010

SqlGeography реализован как пользовательский тип CLR в SQL Server, так что вы можете сделать что-то вроде:

SqlGeography geo = // Get the geography from somewhere...

using (SqlCommand command = 
    new SqlCommand(@"dbo.up_Foobar_Insert", connection))
    command.Parameters.Add(new SqlParameter("@Point", geo) { UdtTypeName = "Geography" });
    command.ExecuteNonQuery();
}

Если это настольное приложение, у вас его совсем немногоПолегче.Хороший пример в Code Project средства просмотра SQL Geometry, который поможет как для настольных компьютеров, так и для веб-сайтов.

Вам нужно обратиться к Microsoft.SqlServer.Types.dll, найденному в SQLУстановка сервера / 100 / SDK / Сборки для непосредственного использования SQLGeometry или SQLGeography.

0 голосов
/ 17 сентября 2010

Обновление

Попробуйте это:

//define parameter
command.Parameters.Add("@shape", SqlDbType.NVarChar);
//
//code in between omitted
//
//set value of parameter
command.Parameters["@shape"].Value = feature.Geometry.AsText();

Взято из Вставка геометрии SQL 2008 с помощью SqlCommand

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...