关于asp.net:.net framework 4.0中哪个是C#等效的geography sql server数据类型?

What is C# equivalent of geography sql server datatype in .net framework 4.0?

使用.NET 4.0框架的NET Web应用程序。

我有一个存储过程,它接受SQL Server 2008 R2中的地理数据类型。

我想将C代码中的数据插入到SQL Server中。

但我找不到在C中应该使用哪种数据类型,这相当于SQL Server 2008数据类型。


听起来可能很明显,但为什么不使用在SQL Server中安装为UDT的同一数据类型-SqlGeography

对于SQL Server 2012实例,以下内容可以正常工作。我无法对SQL Server 2008进行测试,但我认为它应该同样工作:

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
using System;
using Microsoft.SqlServer.Types;
using System.Data.SqlClient;
using System.Data;

namespace ConsoleApplication4
{
    class Program
    {
        static void Main()
        {
            var geom1 = SqlGeography.STGeomFromText(
                        new System.Data.SqlTypes.SqlChars(
                       "LINESTRING(-122.360 47.656, -122.343 47.656)"), 4326);
            var geom2 = SqlGeography.STGeomFromText(
                        new System.Data.SqlTypes.SqlChars(
                       "LINESTRING(-100.0 45.0, -1420 49.0)"), 4326);
            using(var conn = new SqlConnection(
                  @"Server=Server;Database=master;Integrated Security=SSPI;"))
            {
                using (var cmd = new SqlCommand(
                   "select @parm1.STIntersects(@parm2)", conn))
                {
                    var p1 = cmd.Parameters.Add("@parm1", SqlDbType.Udt);
                    p1.UdtTypeName ="geography";
                    p1.Value = geom1;
                    var p2 = cmd.Parameters.Add("@parm2", SqlDbType.Udt);
                    p2.UdtTypeName ="geography";
                    p2.Value = geom2;
                    conn.Open();
                    Console.WriteLine(cmd.ExecuteScalar());
                }
            }
            Console.ReadLine();
        }
    }

}

如果您使用的是实体框架,那么您搜索的数据类型是dbgeography。

下面是有关dbgeography对象->详细信息的更多信息。


是不是DbGeography班?

命名空间:System.Data.Spatial程序集:system.data.entity(在system.data.entity.dll中)

https://msdn.microsoft.com/en-us/library/system.data.spatial.dbgeography.aspx