tr.geologyidea.com
Daha

.net arknesneleri, katman veri kaynağından kullanıcı değerini alır

.net arknesneleri, katman veri kaynağından kullanıcı değerini alır


We are searching data for your request:

Forums and discussions:
Manuals and reference books:
Data from registers:
Wait the end of the search in all databases.
Upon completion, a link will appear to access the found materials.


Bir katman özelliklerinden kullanıcı değerini almam gerekiyor.

Değer şuradandır: Veri Kaynağında Katman Özellikleri -> Kaynak -> kullanıcı (üzgünüz, resmi eklemek için yeterli puan yok).

ILayerProperties'i kontrol etmeye çalıştım, ancak kullanıcı değeriyle ilgili yöntemi bulamadım.

Tecrübesi olan var mı?


Sanırım bir katmanın SDE bağlantısının kullanıcı adını soruyorsunuz. IWorkspace ve IPropertySet kullanmanız gerekir. Bunun gibi bir şey:

Dim pDataset As IDataset = Dim pWorkspace'in kullanıcı adını istediğiniz özellik katmanı/raster katmanı As IWorkspace = pDataset.Workspace Dim pPropertySet As IPropertySet = pWorkspace.ConnectionProperties Dim userName As String = pPropertySet.GetProperty("KULLANICI")

IPropertySet aslında size özelliklerin ve değerlerinin bir sözlüğünü verir. Tüm özellikleri veya tüm değerleri almanız gerekiyorsa, bunları dizilere koyabilirsiniz:

Dim propertyNames() = Hiçbir Şey Dim propertyValues() = Hiçbir şey pPropertySet.GetAllProperties(propertyNames, propertyValues)

IMapServer3.QueryData Yöntemi

Belirtilen tablo için sorgu filtresi seçim ölçütlerini karşılayan satırlardan oluşan bir kayıt kümesi döndürür.

Ürün erişilebilirliği

Notlar

Sorgu Verileri bir katmandaki harita özelliklerinin veya belirli bir sorgu filtresinin parametreleriyle eşleşen bir tablodaki satırların kayıtlarını döndürür. QueryData bir döndürür Sorgu Sonucu. Bir QueryResult formatı bir Kayıt Kümesi, bir KMZ, JSON veya AMF. NS Biçim QueryResult içinde belirtilir QueryResultOptions. QueryResultOptions ayrıca bir GeoDönüşüm eğer birine ihtiyaç duyulursa.

QueryData, bir dizi giriş parametresi gerektirir. Bunlar şunları içerir: bir HaritaAdı, IMapTableAçıklama ve bir IQueryFiltresi. QueryFilter bir öznitelik sorgusu (SQL ifadesi), uzamsal bir sorgu, bir zaman sorgusu, tümünün veya boş. ILayerAçıklama2 vardır Kaynak Kimliği bir GP sonucuna karşı sorgulamak için kullanılabilecek özellik.

Bir katman için LayerDescription şuradan edinilebilir: MapServerInfo::DefaultMapDescription StandaloneTableDescription kullanılarak elde edilebilirken MapServerInfo::StandaloneTableDescriptions Emlak.

Sorgu Filtresi

QueryFilter, öznitelik filtresine (SQL ifadesi), bir uzamsal filtreye, zaman filtresine, her ikisinin veya her ikisinin bir kombinasyonuna dayalı olarak sorgulama yeteneği sağlar. boş. Nitelik filtreleri, geçerli herhangi bir "GIS dışı veriye özgü" SQL ifadesini alır. Örneğin, CNTRY_CODE = BD veya POPULATION = 12345. Tarih alanlarını sorgulama sözdizimi, temel alınan verilere bağlıdır. Shapefile veya File GeoDatabase verileriyle çalışıyorsanız, Erişime dayalı Kişisel GeoDatabase için sözdizimi <FieldName> = tarih 'YYYY-AA-GG' şeklindedir, sözdizimi #YYYY-AA-GG# şeklindedir. SDE veritabanı için, belirli veritabanının yardımına bakın.

olarak ayarlanabilir boş veya Hiçbir şey değil tüm verileri almak için (aynı zamanda MaxRecordCount ile sınırlıdır)

RecordSet çıktısında geometri istenmiyorsa, IQuerFiltre s Alt Alanlar 'Şekil' alanı olmadan tanımlanmalıdır. Alt Alanlar boş olduğunda veya "Şekil" içerdiğinde, IRecordSet "shape_length" ve "shape_area" alanlarını içerecektir. Çıkış geometrisinin istenen uzamsal referansı orijinalden farklıysa, ÇıktıSpatialReferans kullanılmalıdır. Aksi takdirde geometri, aynı uzaysal referans sisteminde döndürülür. VarsayılanHaritaAçıklaması varsayılan olarak.

Alt Alanlar tanımlanmadığında veya = * olduğunda, tüm görünür alanları döndürür. Görünmez veya geçersiz alan adları veya alan takma adları SubField'in dizesine dahil edilmemelidir, aksi takdirde bir hata döndürür. Tüm görünür alanların listesini şu adresten alabilirsiniz: IMapTableInfo::Alanlar. Lütfen, ObjectID alanının Alt Alanlarda olup olmadığına bakılmaksızın her zaman döndürüldüğünü unutmayın. DISTINCT kullanıldığında sadece beklenti vardır.

Bir alandan yalnızca benzersiz değer istendiğinde, ÖnekCümlesi = "FARKLI". Sonucun alan(lar)a göre sıralanmasını istiyorsanız, ORDER BY <alan1, alan2'yi ayarlayın. > için PostfixCümlesi. Lütfen bu seçeneklerin yalnızca ArcSDE GeoDatabase, File GeoDatabase ve Personal GeoDatabase gibi kaynak veritabanı desteklediğinde dikkate alınacağını unutmayın.

Not: MapServer sorgu işlevi tarama verilerini desteklemez. Alt Alanlardan raster alanı eklemekten kaçınmalısınız.

Zaman Sorgusu Filtresi

Bir katman zamanın farkında olduğunda (kullanın IMapTableTimeInfo::SupportsTime özelliği), belirli bir zamanda veya belirli bir süre için mevcut olan bir dizi özelliği almak için bir sorgu yapılabilir. Bir zaman sorgusu gerçekleştirmek için, Zaman Sorgusu Filtresi nesnenin oluşturulması ve bu işleve aktarılması gerekir. Nesne, IQueryFilter ve ISpatialFilter arabirimlerini uyguladığından, bir öznitelik veya uzamsal sorgu zamanla birleştirilebilir.

içindeki değerler BaşlangıçZamanıAlan veya EndTimeField Katmanın içinde döndürülür Zaman referansı. İstenen zaman referansı katmanın referansından farklıysa, ÇıktıZamanıReferans açıkça ayarlanmalıdır.

Arama Şekli

Yalnızca uzamsal sorgulama için gereklidir. Tablo geometri içermediğinden, tablo sorgulandığında SearchShape yok sayılır. SpatialFilter'da ayarlanan geometri aşağıdaki kriterleri karşılamalıdır:

  • Tanımlanmış Mekansal Referans Sistemine sahip olmalıdır. Tanımlanmadığı durumlarda koordinat sisteminin DataFrame'in koordinat sisteminde olduğu varsayılır.
  • Yüksek seviyeli geometrilerden biri olmalıdır, yani Nokta, Çok Noktalı, Çok Çizgili, Çokgen veya Çok Parçalı. Düşük seviyeli geometri örn. BezierCurve, CircularCurve üst düzey bir geometriye sarılmalıdır
  • Topolojik olarak doğru olmalıdır. Daha fazla bilgi için, Çokgen ile ilgili yardıma bakın.

Tanımİfadeler

Bir DefinitionExpression, görüntüleme veya sorgulama için kullanılabilen katman özelliklerini veya satırları sınırlamak için bir katmanda veya bağımsız bir tabloda ayarlanabilir. Bu ifade, kaynak harita belgesinde bir tanım sorgusu olarak da ayarlanabilir. LayerDescription veya StandaloneTableDescription içinde ayarlanan herhangi bir DefinitionExpression, kaynak haritada ayarlanan herhangi bir tanım sorgusunu geçersiz kılar. MapServer QueryData, DefinitionExpression'ı onurlandırır.
Bazı örneklere bakalım. Haritanızda satış bölgelerini temsil eden bir katmanınız var. Katman, BÖLGELER, SATIŞ ve MÜDÜR alanlarını içerir.

Örnek 1: Kaynak haritada katmanın bir tanım sorgusu vardır, "REGION = 'Kuzey'". LayerDescription'da DefinitionExpression belirtilmedi. QueryFilter'ınız burada yan tümce "MANAGER = 'Bob'". Sonuç, Kuzey bölgesine giren ve Bob tarafından yönetilen tüm satış bölgesi özellikleri olacaktır.

Örnek #2: Kaynak haritada katmanın bir tanım sorgusu vardır, "REGION = 'North'". Bir DefinitionExpression'ı LayerDescription içinde "SATIŞ > 1000" olarak uygularsınız. QueryFilter'ınız burada yan tümce "MANAGER = 'Bob'". Sonuç, 1000'in üzerinde satışı olan ve Bob tarafından yönetilen tüm satış bölgesi özellikleri olacaktır. QueryData, LayerDescription içinde DefinitionExpression kümesini dikkate alır. DefinitionExpression, kaynak haritada ayarlanan tanım sorgusunu geçersiz kılar. Katmanın orijinal tanım sorgusunu, "REGION = 'North'" son sorgunuza dahil etmek istiyorsanız, bunu QueryFilter, ""MANAGER = 'Bob' AND "REGION = 'North'" içine eklemelisiniz.

Örnek #3: Kaynak haritada katmanın tanım sorgusu yoktur. Bir DefinitionExpression'ı LayerDescription içinde "SATIŞ > 1000" olarak uygularsınız. QueryFilter'ınız burada yan tümce "MANAGER = 'Bob'". Sonuç, 1000'in üzerinde satışı olan ve Bob tarafından yönetilen tüm satış bölgesi özellikleri olacaktır. QueryData, LayerDescription içinde DefinitionExpression kümesini dikkate alır.

KML (Keyhole Markup Language), JSON (JavaScript Object Notation) veya AMF (Eylem İleti Biçimi) için sonuç bir URL olarak (QueryResultOptions.Format esriQueryResultKMLAsURL olduğunda) veya bir MIME nesnesi olarak (QueryResultOptions.Format esriQueryResultKMLAsMime olduğunda) iletilebilir ).

KML, sıkıştırılmış KMZ biçiminde döndürülür. LayerResultOptions ayarının KML çıktısı üzerinde hiçbir etkisi yoktur.

Kayıt Kümesi
Ne zaman esriQueryResultRecordSetAsObject olarak seçilir SorguSonucuFormat, fonksiyon döner Kayıt Kümesi bir Nesne olarak. Kullanmak IQueryResult::Object buna erişmek için özellik. Döndürülen nesnenin QI olması gerekir IKayıt Kümesi.

Varsayılan olarak, geometri ile aynı uzamsal referansta döndürülür. VarsayılanHaritaAçıklaması. QueryFeatureData2 sonuçlarının uzamsal referansı, kullanılarak DefaultMapDescription'dan farklı bir şeye ayarlanabilir. ÇıktıSpatialReferans. OutputSpatialReference bir özelliğidir IQueryFiltresi. SOAP/WSDL kullanıcıları için her ikisi de ÇıktıUzamsalReferans & UzamsalReferansAlanAdı özellikler gereklidir ve ayarlanmalıdır.

Bazı durumlarda sonuç bir GeoDönüşüm . Örneğin, belirli bir harita hizmeti, GCS_WGS_1984'e dayalı bir uzaysal referans sistemi kullanıyor olabilir. Bir istemci, bu harita hizmetine dayalı QueryFeatureData2 sonuçlarını farklı bir uzamsal referans olan GCS_European_1950'de görüntülemek istiyor. Sonuçlar, DefaultMapDescription, GCS_WGS_1984'ün uzamsal referansını kullanacak ve bu sonuçları GCS_European_1950'de yanlış gösterecektir. Özellikler doğru şekilde "sıralanmayabilir". Bu sonuçları doğru bir şekilde görüntülemek için bir GeoDönüşüm gereklidir. Doğru GeoTransformation'ı uygulamak, sonucun uzamsal doğruluğunu sağlar.

QueryResultsOption'da GeoTransformation'ın belirtilmesinin gerekebileceği başka bir örnek, sorgulanan katmanın harita hizmeti içinde anında yansıtılmasıdır. Yani, katmanın kaynağının koordinat sistemi, DefaultMapDescription koordinat sisteminden farklıdır ve sunulmadan önce harita belgesinde uygun bir dönüşüm ayarlanmamıştır. Bu durumda, önce katmanın koordinatlarını alarak bir katman kaynağının koordinat sistemine erişebilirsiniz. MapLayerInfo, sonra al Alanlar MapLayerInfo'dan Shape'i alın Tarla Fields'dan al GeometriDef Field'dan ve son olarak GeometryDef'ten SpatialReference'ı alın.

Öngörülen koordinat sistemleri aynı temel coğrafi koordinat sistemini paylaşıyorsa GeoTransformation gerekli değildir. En iyi sonuçlar için, veriler (harita hizmeti içindeki katmanlar), harita hizmeti ve MapServer çıktısının aynı koordinat sistemini kullanması en uygunudur.

Bazı durumlarda, performans nedenleriyle olabilir, kayıt kümesi sonucunda döndürülen geometriyi sınırlamak veya ayarlamak isteyebilirsiniz. Kullanmak ILayerResultOptions bunu yönetmek için. Eğer Dahil EtGeometri False olarak ayarlanırsa, geometri kayıt kümesine dahil edilmez. Bu, özellik geometrisinin büyük olduğu durumlarda performansı artırmalıdır. Ayrıca döndürülen geometriyi kullanarak yoğunlaştırmayı veya genelleştirmeyi de seçebilirsiniz. GeometriSonuçSeçenekleri. Yoğunlaştırma, Arcs'ı desteklemeyen istemcileri (örneğin Bezier, Circular vb.) daha iyi desteklemek için kullanılır. Genelleme, ağ üzerinden gönderilen coğrafya miktarını azaltır ve daha iyi performansa yol açmalıdır.

Alan görünürlüğü ve alan takma adları

QueryData, kaynak harita belgesinde ayarlanan alan görünürlüğünü ve alan takma adlarını dikkate alır. Bununla birlikte, RecordSet, kaynak haritadaki herhangi bir alan biçimlendirme setine UYGUN DEĞİLDİR.

Çeşitli

MapServer'ın bir sorgu için işlemesi gereken bilgi miktarını kontrol etmek için maksimum sayıda kayıt ayarlanabilir. Bu değer, MaxRecordCount mülkiyet IMapServerInit2. Bu özellik için varsayılan değer 500'dür. 600 özellik belirli bir sorguyla eşleşirse yalnızca ilk 500 sonuç döndürülür. Kalan 100 kayda erişemeyeceksiniz. Bu kayıtlara erişebilmek için MaxRecordCount'un 600'e çıkarılması gerekir. MaxRecordCount, MapServer'ın konfigürasyon dosyasındaki MaxRecordCount XML etiketi değiştirilerek de değiştirilebilir.

Arasında iki önemli fark var Bulmak ve QueryFeatureData2. Birincisi, Sorgu yöntemleri tek bir katmanla çalışırken Find'ın birden çok katman üzerinde çalışabilmesidir. İkincisi, Bul'un yalnızca bir arama dizesiyle çalışmasıdır. Sorgu yöntemleri, parametre olarak bir queryFilter kullanır. Bu, sorgunun bir öznitelik filtresine (SQL ifadesi) veya bir uzamsal filtreye dayalı olmasına izin verir.

QueryData & QueryFeatureData arasındaki temel farklar, ilkinin hem katmanda hem de tabloda arama yapabilmesi ve ayarlarını yerine getirmesidir; Tanım İfade vb.

Hem IQueryFilter::SubField hem de ILayerResultOption::IncludeGeometry ayarlandığında, SubField IncludeGeometry'ye göre önceliklidir. Örneğin, SubField = "Shape, FName, LName, Address" ve IncludeGeometry = False olduğunda, çıktı kayıt kümesi, Şekil alanında bulunan geometriyi içerecektir.


IMapServer3.QueryFeatureData2 Yöntemi

Belirtilen katman için sorgu filtresi seçim ölçütlerini karşılayan bir dizi özellik döndürür.

Ürün erişilebilirliği

Tanım

Not: bunun yerini aldı Sorgu Verileri.

Notlar

Sorgu ÖzelliğiVeri2 belirli bir sorgu filtresinin parametreleriyle eşleşen harita özelliklerinin kayıtlarını döndürür. QueryFeatureData2 bir döndürür SorguSonucu. Bir QueryResult biçimi, KML veya Kayıt Kümesi. NS Biçim QueryResult içinde belirtilir QueryResultOptions. QueryResultOptions ayrıca bir GeoDönüşüm eğer birine ihtiyaç duyulursa.

QueryFeatureData2, bir dizi giriş parametresi gerektirir. Bunlar şunları içerir: bir İsim, Katman Açıklaması ve bir Sorgu Filtresi. QueryFilter bir öznitelik sorgusu (SQL ifadesi), bir uzamsal sorgu, her ikisinin veya her ikisinin bir kombinasyonu olabilir. boş. ILayerAçıklama2 vardır Kaynak Kimliği bir GP sonucuna karşı sorgulamak için kullanılabilecek özellik.

Sorgu Filtresi

QueryFilter, öznitelik filtresine (SQL ifadesi) bir uzamsal filtreye veya her ikisinin birleşimine dayalı olarak sorgulama yeteneği sağlar. Nitelik filtreleri, geçerli herhangi bir "GIS dışı veriye özgü" SQL ifadesini alır. Örneğin, CNTRY_CODE = BD veya POPULATION = 12345. Tarih alanlarını sorgulama sözdizimi, temel alınan verilere bağlıdır. Shapefile veya File GeoDatabase verileriyle çalışıyorsanız, Erişime dayalı Kişisel GeoDatabase için sözdizimi <FieldName> = date 'YYYY-AA-GG' şeklindedir, sözdizimi #YYYY-AA-GG# şeklindedir. SDE veritabanı için, belirli veritabanının yardımına bakın.

olarak ayarlanabilir boş veya Hiçbir şey değil tüm verileri almak için (ayrıca MaxRecordCount)

RecordSet çıktısında geometri istenmiyorsa, IQuerFiltre s Alt Alanlar 'Şekil' alanı olmadan tanımlanmalıdır. Alt Alanlar boş olduğunda veya "Şekil" içerdiğinde, IRecordSet "shape_length" ve "shape_area" alanlarını içerecektir. Çıkış geometrisinin istenen uzamsal referansı orijinalden farklıysa, ÇıktıUzamsalReferans kullanılmalıdır. Aksi takdirde geometri, aynı uzaysal referans sisteminde döndürülür. VarsayılanHaritaAçıklaması varsayılan olarak. Alt Alanlar tanımlanmadığında veya = * olduğunda, tüm görünür alanları döndürür. Görünmez veya geçersiz alan adları veya alan takma adları SubField'in dizesine dahil edilmemelidir, aksi takdirde bir hata döndürür. Lütfen, ObjectID alanının Alt Alanlarda olup olmadığına bakılmaksızın her zaman döndürüldüğünü unutmayın. DISTINCT kullanıldığında sadece beklenti vardır.

Arama Şekli

ISpatialFilter'da ayarlanan geometri aşağıdaki kriterleri karşılamalıdır:

  • Tanımlanmış Mekansal Referans Sistemine sahip olmalıdır. Tanımlanmadığı durumlarda koordinat sisteminin DataFrame'in koordinat sisteminde olduğu varsayılır.
  • Yüksek seviyeli geometrilerden biri olmalıdır, yani Nokta, Çok Noktalı, Çok Çizgili, Çokgen veya Çok Parçalı. Düşük seviyeli geometri örn. BezierCurve, CircularCurve üst düzey bir geometriye sarılmalıdır
  • Topolojik olarak doğru olmalıdır. Daha fazla bilgi için bkz. IPoligon ve ITopolojikOperatör::Basitleştir .

Tanımİfadeler

A Tanımİfade görüntüleme veya sorgulama için mevcut olan katman özelliklerini sınırlamak için bir katman üzerinde ayarlanabilir. Bu ifade, kaynak harita belgesinde bir tanım sorgusu olarak da ayarlanabilir. LayerDescription içinde ayarlanan herhangi bir DefinitionExpression, kaynak haritada ayarlanan herhangi bir tanım sorgusunu geçersiz kılar. MapServer QueryFeatureData2, DefinitionExpression'ı onurlandırır.

Bazı örneklere bakalım. Haritanızda satış bölgelerini temsil eden bir katmanınız var. Katman, BÖLGELER, SATIŞ ve MÜDÜR alanlarını içerir.

Örnek 1: Kaynak haritada katmanın bir tanım sorgusu vardır, "REGION = 'Kuzey'". LayerDescription içinde DefintionExpression belirtilmedi. QueryFilter'ınız burada yan tümce "MANAGER = 'Bob'". Sonuç, Kuzey bölgesine giren ve Bob tarafından yönetilen tüm satış bölgesi özellikleri olacaktır.

Örnek #2: Kaynak haritada katmanın bir tanım sorgusu vardır, "REGION = 'North'". Bir DefinitionExpression'ı LayerDescription içinde "SATIŞ > 1000" olarak uygularsınız. QueryFilter'ınız burada yan tümce "MANAGER = 'Bob'". Sonuç, 1000'in üzerinde satışı olan ve Bob tarafından yönetilen tüm satış bölgesi özellikleri olacaktır. QueryFeatureData2, LayerDescription içinde DefinitionExpression kümesini dikkate alır. DefinitionExpression, kaynak haritada ayarlanan tanım sorgusunu geçersiz kılar. Katmanın orijinal tanım sorgusunu "REGION = 'North'" son sorgunuza dahil etmek istiyorsanız, bunu QueryFilter'ınıza, ""MANAGER = 'Bob' AND "REGION = 'North'" eklemeniz gerekir.

Örnek #3: Kaynak haritada katmanın tanım sorgusu yoktur. Bir DefinitionExpression'ı LayerDescription içinde "SATIŞ > 1000" olarak uygularsınız. QueryFilter'ınız burada yan tümce "MANAGER = 'Bob'". Sonuç, 1000'in üzerinde satışı olan ve Bob tarafından yönetilen tüm satış bölgesi özellikleri olacaktır. QueryFeatureData2, LayerDescription içinde DefinitionExpression kümesini dikkate alır.

Sonuç iki biçimde döndürülebilir: KML ve RecordSet.

KML
KML istenen çıktı olduğunda, bir URL olarak geri gönderilir (ne zaman SorguSonucuFormat dır-dir esriQueryResultKMLAsURL) veya bir MIME nesnesi olarak ( SorguSonucuFormat dır-dir esriQueryResultKMLAsMime). Dosya veya Mime, sıkıştırılmış KMZ biçiminde döndürülür.

LayerResultOptions ayarının KML çıktısı üzerinde hiçbir etkisi yoktur.

Kayıt Kümesi
Ne zaman esriQueryResultRecordSetAsObject olarak seçilir SorguSonucuFormat, fonksiyon döner Kayıt Kümesi bir Nesne olarak. Kullanmak IQueryResult::Object buna erişmek için özellik. Döndürülen nesnenin QI olması gerekir IRecordSet.

Varsayılan olarak, geometri ile aynı uzamsal referansta döndürülür. VarsayılanHaritaAçıklaması. QueryFeatureData2 sonuçlarının uzamsal referansı, kullanılarak DefaultMapDescription'dan farklı bir şeye ayarlanabilir. ÇıktıSpatialReferans. OutputSpatialReference bir özelliğidir IQueryFiltresi. SOAP/WSDL kullanıcıları için her ikisi de ÇıktıSpatialReferans & UzamsalReferansAlanAdı özellikler gereklidir ve ayarlanmalıdır.

Bazı durumlarda sonuç bir GeoDönüşüm . Örneğin, belirli bir harita hizmeti, GCS_WGS_1984'e dayalı bir uzaysal referans sistemi kullanıyor olabilir. Bir istemci, bu harita hizmetine dayalı QueryFeatureData2 sonuçlarını farklı bir uzamsal referans olan GCS_European_1950'de görüntülemek istiyor. Sonuçlar, DefaultMapDescription, GCS_WGS_1984'ün uzamsal referansını kullanacak ve bu sonuçları GCS_European_1950'de hatalı olarak görüntüleyecektir. Özellikler doğru şekilde "sıralanmayabilir". Bu sonuçları doğru bir şekilde görüntülemek için bir GeoDönüşüm gereklidir. Doğru GeoTransformation'ı uygulamak, sonucun uzamsal doğruluğunu sağlar.

QueryResultsOption'da GeoTransformation'ın belirtilmesinin gerekebileceği başka bir örnek, sorgulanan katmanın harita hizmeti içinde anında yansıtılmasıdır. Yani, katmanın kaynağının koordinat sistemi, DefaultMapDescription koordinat sisteminden farklıdır ve sunulmadan önce harita belgesinde uygun bir dönüşüm ayarlanmamıştır. Bu durumda, önce katmanın koordinatlarını alarak bir katman kaynağının koordinat sistemine erişebilirsiniz. MapLayerInfo, sonra al Alanlar MapLayerInfo'dan Shape'i alın Tarla Fields'dan al GeometriDef Field'dan ve son olarak GeometryDef'ten SpatialReference'ı alın.

Öngörülen koordinat sistemleri aynı temel coğrafi koordinat sistemini paylaşıyorsa GeoTransformation gerekli değildir. En iyi sonuçlar için veriler (harita hizmeti içindeki katmanlar), harita hizmeti ve MapServer çıktısının aynı koordinat sistemini kullanması en uygunudur.

Bazı durumlarda, performans nedenleriyle olabilir, kayıt kümesi sonucunda döndürülen geometriyi sınırlamak veya ayarlamak isteyebilirsiniz. Kullanmak ILayerResultOptions bunu yönetmek için. Eğer Dahil EtGeometri False olarak ayarlanırsa, geometri kayıt kümesine dahil edilmez. Bu, özellik geometrisinin büyük olduğu durumlarda performansı artırmalıdır. Ayrıca döndürülen geometriyi kullanarak yoğunlaştırmayı veya genelleştirmeyi de seçebilirsiniz. GeometriSonuçSeçenekleri. Yoğunlaştırma, Arcs'ı desteklemeyen istemcileri (örneğin Bezier, Circular vb.) daha iyi desteklemek için kullanılır. Genelleme, ağ üzerinden gönderilen coğrafya miktarını azaltır ve daha iyi performansa yol açmalıdır.

Alan görünürlüğü ve alan takma adları

QueryFeatureData2, kaynak harita belgesinde ayarlanan alan görünürlüğünü ve alan takma adlarını dikkate alır. Ancak RecordSet, OLUMSUZLUK kaynak haritada ayarlanan herhangi bir alan biçimlendirmesini dikkate alın.

Çeşitli

MapServer'ın bir sorgu için işlemesi gereken bilgi miktarını kontrol etmek için maksimum sayıda kayıt ayarlanabilir. Bu değer, MaxRecordCount mülkiyet IMapServerInit2. Bu özellik için varsayılan değer 500'dür. 600 özellik belirli bir sorguyla eşleşirse yalnızca ilk 500 sonuç döndürülür. Kalan 100 kayda erişemeyeceksiniz. Bu kayıtlara erişebilmek için MaxRecordCount'un 600'e çıkarılması gerekir. MaxRecordCount, MapServer'ın konfigürasyon dosyasındaki MaxRecordCount XML etiketi değiştirilerek de değiştirilebilir.

Arasında iki önemli fark var Bulmak ve QueryFeatureData2. Birincisi, Sorgu yöntemleri tek bir katmanla çalışırken Find'ın birden çok katman üzerinde çalışabilmesidir. İkincisi, Bul'un yalnızca bir arama dizesiyle çalışmasıdır. Sorgu yöntemleri, parametre olarak bir queryFilter kullanır. Bu, sorgunun bir öznitelik filtresine (SQL ifadesi) veya bir uzamsal filtreye dayalı olmasına izin verir.

Öncelik. Hem IQueryFilter::SubField hem de ILayerResultOption::IncludeGeometry ayarlandığında, SubField IncludeGeometry'ye göre önceliklidir. Örneğin, SubField = "Shape, FName, LName, Address" ve IncludeGeometry = False olduğunda, çıktı kayıt kümesi, Şekil alanında bulunan geometriyi içerecektir.


3 Cevap 3

İstisnalar, hata hakkında gerçekten bir şeyler yapabilen kod katmanında ele alınmalıdır.

"Günlüğe kaydet ve yeniden at" kalıbı genellikle bir antipattern olarak kabul edilir (tam olarak bahsettiğiniz nedenden dolayı, çok sayıda yinelenen koda yol açar ve pratik bir şey yapmanıza gerçekten yardımcı olmaz.)

Bir istisnanın amacı, "beklenmemesi" olmasıdır. Çalıştığınız kod katmanı, hata oluştuğunda başarılı işlemeye devam etmek için makul bir şey yapamıyorsa, kabarcık oluşturmasına izin verin.

Çalıştığınız kod katmanı ise Yapabilmek hata oluştuğunda devam etmek için bir şeyler yapın, bu hatayı işlemek için noktadır. ("Başarısız" bir http yanıt kodu döndürmek, "işlemeye devam etmenin" bir yolu olarak sayılır. Programı çökmekten kurtarıyorsunuz.)


SQL Server ile XML Kullanma

XML Nedir?

W3C, XML'i "Web'deki yapılandırılmış belgeler ve veriler için evrensel biçim" olarak tanımlar. XML, W3C tarafından geliştirilmiş ve standartlaştırılmıştır. W3C, XML'i neden geliştirdiğini şu şekilde açıklamaktadır: “XML, öncelikle sektöre özel biçimlendirme, satıcıdan bağımsız veri alışverişi, medyadan bağımsız yayıncılık, bire bir pazarlama, büyük ölçekli Web içeriği sağlayıcılarının gereksinimlerini karşılamayı amaçlamaktadır. işbirlikçi yazma ortamlarında iş akışı yönetimi ve akıllı istemciler tarafından Web belgelerinin işlenmesi” [971208 W3C basın bülteni, www.w3c.org/xml ]. W3C, XML'in öncelikle Web uygulamalarında kullanılması için tasarlanmıştır. Ancak, XML'in kullanışlılığı bu alanın ötesine geçmiştir ve Microsoft'un .NET platformundaki standart uygulamalarda ve farklı sistemler arasında veri alışverişi için de kullanılmaktadır. XML, platformdan ve geliştirme dilinden bağımsız olarak verilerin değiş tokuş edilmesini sağlar.

XML, verilerin internette evrensel olarak XML'i destekleyen herhangi bir platformda paylaşılmasına izin veren açık bir standarttır. XML, yapılandırılmış verilerin metin tabanlı bir format kullanılarak tanımlanmasına izin verir. Bu veriler daha sonra Web'de kullanılan protokol olan Köprü Metni Aktarım Protokolü (HTTP) üzerinden teslim edilebilir ve değiştirilebilir. XML verileri alındığında, veriler istemcide görüntüleme ve/veya manipülasyon için kullanılabilir veya sunucular arasında veri alışverişi için kullanılabilir. XML, Standart Genelleştirilmiş İşaretleme Dilinin (SGML) basitleştirilmiş bir alt kümesidir. XML internet için tasarlanmış olsa da internet uygulamaları ile sınırlı değildir. Standart istemci/sunucu uygulamalarında da kullanılabilir. Microsoft'un yeni .NET stratejisi, standart veri değişim biçimi olarak XML'den yararlanır.


12 Cevap 12

ne olduğunu tanımlamak için Hizmetler sorumluluklar, öncelikle ne olduğunu tanımlamanız gerekir. hizmet dır-dir.

Hizmet kanonik veya genel bir yazılım terimi değildir. Aslında, bir sınıf adındaki Hizmet soneki, çok kötü niyetli Yönetici'ye çok benzer: Size nesnenin gerçekte ne olduğu hakkında neredeyse hiçbir şey söylemez. yapmak.

Gerçekte, bir hizmetin yapması gereken son derece mimariye özgüdür:

Geleneksel katmanlı mimaride, hizmet kelimenin tam anlamıyla eş anlamlıdır iş mantığı katmanı. UI ve Data arasındaki katmandır. Öyleyse, tüm iş kuralları hizmetlere girer. Veri katmanı yalnızca temel CRUD işlemlerini anlamalı ve UI katmanı yalnızca sunum DTO'larının iş nesnelerine ve nesnelere eşlenmesiyle ilgilenmelidir.

RPC tarzı dağıtılmış bir mimaride (SOAP, UDDI, BPEL, vb.), hizmet fiziksel bir mantıksal versiyonudur uç nokta. Esasen, bakıcının genel bir API olarak sağlamak istediği bir işlemler topluluğudur. Çeşitli en iyi uygulama kılavuzları, bir hizmetin operasyon aslında CRUD değil, iş düzeyinde bir operasyon olmalı ve ben de aynı fikirdeyim.

Ancak yönlendirme nedeniyle her şey gerçek bir uzaktan hizmet aracılığıyla performansa ciddi şekilde zarar verebilir, normalde en iyisidir olumsuzluk bu hizmetlerin aslında iş mantığını kendilerinin yerine getirmesini sağlamak için, bir "dahili" iş nesneleri kümesini sarmaları gerekir. Tek bir hizmet, bir veya birkaç iş nesnesini içerebilir.

Bir MVP/MVC/MVVM/MV* mimarisinde, Hizmetler hiç yok. Veya yaparlarsa, bu terim, bir denetleyiciye veya görünüm modeline enjekte edilebilecek herhangi bir genel nesneye atıfta bulunmak için kullanılır. İş mantığı senin içinde model. Karmaşık işlemleri düzenlemek için "hizmet nesneleri" oluşturmak istiyorsanız, bu bir uygulama ayrıntısı olarak görülür. Ne yazık ki birçok insan MVC'yi bu şekilde uygular, ancak modelin kendisi hiçbir şey yapmadığı için bir anti-kalıp (Anemik Etki Alanı Modeli) olarak kabul edilir, bu sadece UI için bir grup özelliktir.

Bazı insanlar yanlışlıkla 100 satırlık bir denetleyici yöntemi alıp hepsini bir hizmete sokmanın bir şekilde daha iyi bir mimari sağladığını düşünüyor. Gerçekten yaptığı tek şey başka, muhtemelen gereksiz bir dolaylı katman eklemek değil. Pratikte konuşurken, denetleyici hala işi yapıyor, bunu sadece kötü adlandırılmış bir "yardımcı" nesne aracılığıyla yapıyor. Anemik bir etki alanı modelinin nasıl kullanışlı bir modele dönüştürüleceğine dair net bir örnek için Jimmy Bogard'ın Kötü Etki Alanı Modelleri sunumunu şiddetle tavsiye ederim. Ortaya çıkardığınız modellerin dikkatli bir şekilde incelenmesini ve bir ortamda hangi işlemlerin gerçekten geçerli olduğunu içerir. işletme bağlam.

Örneğin, veritabanınız Siparişler içeriyorsa ve Toplam Tutar için bir sütununuz varsa, uygulamanız muhtemelen bu alanı gerçekten keyfi bir değere değiştirmesine izin verilmemelidir, çünkü (a) geçmiştir ve (b) ne olduğuna göre belirlenmelidir. içinde sıra ve belki de diğer bazı zamana duyarlı veriler/kurallar. Siparişleri yönetmek için bir hizmet oluşturmak, bu sorunu mutlaka çözmez, çünkü kullanıcı kodu hâlâ gerçek Order nesnesini alın ve üzerindeki miktarı değiştirin. Bunun yerine, sipariş kendisi yalnızca güvenli ve tutarlı yollarla değiştirilebilmesini sağlamaktan sorumlu olmalıdır.

DDD'de hizmetler, herhangi bir toplu köke uygun şekilde ait olmayan bir işleminiz olduğunda özellikle durum içindir. Burada dikkatli olmalısınız, çünkü çoğu zaman bir hizmete ihtiyaç duymanız, doğru kökleri kullanmadığınız anlamına gelebilir. Ancak bunu yaptığınızı varsayarsak, bir hizmet birden çok kökteki işlemleri koordine etmek veya bazen etki alanı modelini hiç içermeyen endişeleri (belki de bir BI/OLAP veritabanına bilgi yazmak gibi) ele almak için kullanılır.

DDD hizmetinin dikkate değer bir yönü, işlem komut dosyalarını kullanmasına izin verilmesidir. Büyük uygulamalar üzerinde çalışırken, bir T-SQL veya PL/SQL prosedürü ile bir şeyi başarmanın etki alanı modeliyle uğraşmaktan çok daha kolay olduğu durumlarla eninde sonunda karşılaşmanız çok olasıdır. Bu sorun değil ve bir Hizmete ait.

Bu, hizmetlerin katmanlı mimari tanımından radikal bir ayrılmadır. Bir hizmet katmanı, etki alanı nesnelerini kapsüller, bir DDD hizmeti ne olursa olsun kapsüller değil etki alanı nesnelerinde ve olması mantıklı değil.

Hizmet Odaklı Mimaride, hizmet bir iş kabiliyeti için teknik otorite olarak kabul edilir. Bu demektir ki, özel iş verilerinin belirli bir alt kümesinin sahibi ve başka hiçbir şeyin bu verilere dokunmasına izin verilmez - sadece okuman o.

Zorunlu olarak, hizmetler aslında bir SOA'da uçtan uca bir tekliftir. Anlamı, bir hizmet çok belirli bir hizmet değildir. bileşen bir bütün olarak yığın, ve tüm uygulamanız (veya tüm işletmeniz), mesajlaşma ve UI katmanları dışında kesişme olmaksızın yan yana çalışan bu hizmetler kümesidir. Her hizmetin kendi verileri, kendi iş kuralları ve kendi kullanıcı arayüzü vardır. Birbirleriyle uyum içinde olmaları gerektiği için birbirleriyle uyum içinde olmaları gerekmez - ve işin kendisi gibi, her hizmetin kendi sorumlulukları vardır ve diğerlerinden az ya da çok bağımsız olarak çalışır.

SOA tanımına göre, iş mantığının her parçası herhangi bir yer hizmetin içinde yer alır, ancak daha sonra, tamamı da sistem. Bir SOA'daki hizmetler bileşenler, ve sahip olabilirler uç noktalar, ancak herhangi bir kod parçasını a olarak adlandırmak oldukça tehlikelidir. hizmet çünkü orijinal "S" nin ne anlama geldiğiyle çelişiyor.

SOA genellikle mesajlaşmaya oldukça meraklı olduğundan, paketlemiş olabileceğiniz işlemler hizmet önce genellikle kapsüllenir işleyiciler, ama çokluk farklıdır. Her işleyici kolları bir mesaj tipi, bir operasyon. Bu, Tek Sorumluluk İlkesinin katı bir yorumudur, ancak olası her işlem kendi sınıfında olduğu için büyük bir sürdürülebilirlik sağlar. Yani gerçekten değilsin ihtiyaç merkezi iş mantığı, çünkü komutlar teknik işlemlerden ziyade iş operasyonlarını temsil eder.

Sonuç olarak, seçtiğiniz herhangi bir mimaride, iş mantığının çoğuna sahip olan bir bileşen veya katman olacaktır. Sonuçta, iş mantığı her yere dağılmışsa, o zaman sadece spagetti kodunuz olur. Ancak bu bileşene a deseniz de demeseniz de hizmetve operasyon sayısı veya boyutu gibi şeyler açısından nasıl tasarlandığı, mimari hedeflerinize bağlıdır.


Ontolojiye dayalı coğrafi bilgi entegrasyon mimarilerinde jeo-uzamsal veri kaynağı keşfi için metodoloji

Bilgi, iletişim ve algılama teknolojilerindeki gelişmeler nedeniyle, üretilen coğrafi bilgi miktarı sürekli artmaktadır. Jeo-uzamsal bilgiler farklı paydaşlar tarafından İnternet üzerinden üretilip kullanıma sunulduğundan, jeo-uzamsal verilerin ve jeo-uzamsal veri kaynaklarının heterojenliği kaçınılmaz hale gelmektedir. Küresel olarak mevcut jeo-uzamsal veri kaynaklarının bu heterojenliği, dağıtılmış jeo-uzamsal veri kaynaklarından jeo-uzamsal verileri keşfetmeye ve birleştirmeye çalışan bireyler için büyük zorluklar ortaya çıkarmaktadır. Jeo-Bilgi Sistemi (CBS) alanına ait olmayan, ancak bir grup jeoportal kullanıcı grubuna ait olan bireylerin bakış açısından, heterojen jeo-uzamsal verileri keşfetme ve bunlara erişme sürecinin yönetilmesi zor bir süreç olduğu kanıtlanmıştır. Geoportallar, tek bir keşif ve coğrafi bilgiye erişim noktası olarak öngörüldüğünden, geoportal kullanıcıları, geoportal'ın kendilerine kendi dillerini kullanarak aradıklarını kolayca bulabilecekleri (keşfedebilecekleri) bir mekanizma sağlamasını beklemektedir. Böyle bir mekanizma, bir coğrafi portalın kullanılabilirliğini ve kullanıcı memnuniyetini önemli ölçüde iyileştirecektir. Bu tür bir mekanizmanın uygulanması, büyük ölçüde bir jeoportalın dayandığı altyapıya, yani birlikte çalışabilir bir coğrafi bilgi yayma ortamına bağlıdır.

Jeo-uzamsal verilerin keşfedilebilirliğini artırmak ve jeoportal kullanılabilirliğin iyileştirilmesi için kullanılabilecek bilgi temelini oluşturmak için bilim adamları ve mühendisler, aşağıdaki yaklaşımlara dayalı birlikte çalışabilir coğrafi bilgi yayma ortamları geliştirdiler: Web'den erişilebilen coğrafi bilgi kaynaklarının sözdizimsel standardizasyonu ve anlamsal açıklamaları ve ontoloji odaklı coğrafi bilgi entegrasyonu. Bu yaklaşımlar heterojen ve dağıtık jeo-uzamsal veri kaynaklarının keşfini artırmasına rağmen, jeo-uzamsal veri kaynaklarını tamamen keşfedilebilir kılmak için hala ele alınması gereken bazı sorunlar vardır. Örnek olarak, çoğu durumda jeoportal kullanıcılara jeo-uzamsal kaynakların anlamının açık bir açıklaması sağlanmaz veya uygun coğrafi bilgileri keşfetmek için hangi anahtar kelimeleri kullanmaları gerektiğini bilemeyebilir.

Bu zorluklar göz önüne alındığında, jeoportal kullanılabilirliğin iyileştirilmesi için kullanılan yeni bir metodoloji tanımladık. Metodolojimizin, ontoloji odaklı coğrafi bilgi entegrasyon mimarilerine dayanan coğrafi portallarda kullanılması öngörülmektedir. Bu metodoloji içinde uygulanan bir yaklaşım, son kullanıcılar tarafından tanımlanan, coğrafi bilginin doğal dil tanımından çıkarılan terimleri kullanır. Kullanıcı tanımlı açıklamanın belirsizliği, denetimsiz kelime anlamı belirsizleştirme yöntemlerinin bir kombinasyonu aracılığıyla giderilir. Belirsizliği giderildiğinde, bu açıklama (etki alanı/yerel) ontoloji kavram adlarının anlamı ile eşleştirilir. Eşleştirme işlemi, netleştirilmiş kullanıcı tanımlı açıklama ile (alan/yerel) ontoloji kavramlarının anlamı arasındaki anlamsal benzerlik ölçümü yoluyla gerçekleştirilir.

Metodolojimiz, coğrafi veri keşfini basitleştirir ve temeldeki mimarilerin ontolojik bileşenlerini orijinal formlarında kullandığı için kolayca uygulanabilir. Bu yazıda tarif ettiğimiz metodoloji, benzer belirgin çözümler bağlamında tartışılacaktır. Ayrıca, bu makale önerilen metodolojinin uygulanabilirliğini gösterecek bir prototip sunacaktır. Gerçekleştirilen prototip, girdi olarak iki kaynağı kullanan bağımsız bir masaüstü uygulamasıdır: Web Ontology Language (OWL) kullanılarak geliştirilen kullanıcı tanımlı coğrafi bilgi tanımı ve (etki alanı/yerel) ontolojiler. Jeo-uzamsal veri keşfi için daha önce kullanılmış olan yaklaşımlara göre faydaların bir özetini sunacağız ve gelecekteki iyileştirme ve geliştirme için kılavuzlar sunacağız.


Özellik verileriyle çalışma

Özet ArcObjects .NET yazılım geliştirme kiti (SDK) Yardım sistemindeki bu bölüm, özellik sınıfları ve tablolar gibi özellik ve satır tabanlı veri kümeleriyle çalışma ve ayrıca genel coğrafi veritabanı işlevselliği hakkında konuları içerir.

Bir coğrafi veritabanı, endüstri standardı ilişkisel veritabanı yönetim sistemleri (RDBMS) üzerine kurulmuş bir coğrafi veri deposudur. Coğrafi veritabanları, bir dizi veritabanı yönetim sistemi (DBMS) mimarisinde çalışır ve dosya sistemleri birçok boyutta gelir ve değişen sayıda kullanıcıya sahiptir. Dosyalar üzerine kurulu küçük tek kullanıcılı veritabanlarından, birçok kullanıcının eriştiği daha büyük çalışma grupları, departmanlar ve kurumsal coğrafi veritabanlarına kadar ölçeklenebilirler.

Coğrafi veritabanı kitaplığı, coğrafi veritabanı için uygulama programlama arabirimi (API) sağlar. Kütüphanedeki nesneler, uzak coğrafi veritabanları, yerel coğrafi veritabanları ve dosya tabanlı veri kaynakları dahil olmak üzere ArcGIS'te desteklenen tüm veri kaynakları için birleşik bir programlama modeli sağlar. Bu kütüphane, mimaride daha yüksek kullanılan sınıfların ve arayüzlerin çoğunu tanımlar.

Bilgisayar destekli tasarım (CAD) veri kümeleri ve şekil dosyaları gibi bazı konular coğrafi veritabanı dışındaki veri kaynaklarına odaklanır. Bu veri kaynaklarına karşı geliştirme yaparken dikkat edilmesi gereken önemli farklılıklar olsa da, bunlar ile coğrafi veritabanı arasında birçok benzerlik ve ortak iş akışları vardır.

Bu konu, bir uygulama geliştiricisinin coğrafi veritabanı API'sini etkin bir şekilde kullanmak için anlaması gereken coğrafi veritabanının temel öğelerini vurgulamaktadır. Ayrıca, karmaşık veri kümeleri ve coğrafi veri tabanı özelleştirmesi ile programlamaya kısa bir genel bakış içerir. Bu bir genel bakış konusu olduğundan, daha ayrıntılı ArcGIS Desktop Yardım konularına bağlantılı referanslar, adım adım programlama konuları ve eksiksiz kod örnekleri bu konudaki her bölümün altında bulunabilir.


Anahtar kelimeler

Vassilios Vescoukis: Dr. Vassilios Vescoukis 1967 yılında Yunanistan'ın Atina şehrinde doğdu. Diplomasını ve doktorasını aldı. Atina Ulusal Teknik Üniversitesi Elektrik ve Bilgisayar Mühendisliği Okulu'ndan sırasıyla 1991 ve 1996 yıllarında dereceler aldı. Halen NTUA Harita Mühendisliği Okulu'nda Yardımcı Doçent olarak görev yapmaktadır. Araştırma ilgi alanları arasında yazılım geliştirmede akıl yürütme desteği, dağıtık heterojen yazılım uygulamaları, katma değerli optimizasyon hizmetleri ve bilgi tabanlı sistemler yer almaktadır.

Nikolaos Doulamis: Nikolaos D. Doulamis received his Diploma degree in Electrical and Computer Engineering from the National Technical University of Athens (NTUA) in 1995 with the highest honor and his Ph.D. degree in electrical and computer engineering from NTUA in 2000. He joined the Image, Video and Multimedia Lab of NTUA in 1996 as research assistant. His Ph.D. thesis was supported by the Bodosakis Foundation Scholarship. He has elected as Assistant Professor in the National Technical University of Athens.

Dr. Doulamis was awarded as the Best Greek Student in the field of engineering in national level by the Technical chamber of Greece in 1995. In 1996, he was received the Best Graduate Thesis Award in the area of electrical engineering with A. Doulamis. During his studies he has also received several prizes and awards from the National Technical University of Athens, the National Scholarship Foundation and the Technical Chamber of Greece. In 1997, he was given the NTUA Medal as Best Young Engineer. In 2000, he was served as Chairman of the technical program committee of the VLBV’01 workshop, while he has also served on the program committees in several international conferences and workshops. In 2000, he was given the Thomaidion Foundation best journal paper award in conjunction with A. Doulamis. He is editor in the Who is Who bibliography. He is a reviewer of IEEE journals and conferences as well as and other leading international journals.

His research interests include video transmission, service engineering, content-based image retrieval, summarization of video sequences and intelligent techniques for video processing.


An Integrated WebGIS Framework for Volunteered Geographic Information and Social Media in Soil and Water Conservation

Volunteered geographic information and social networking in a WebGIS has the potential to increase public participation in soil and water conservation, promote environmental awareness and change, and provide timely data that may be otherwise unavailable to policymakers in soil and water conservation management. The objectives of this study were: (1) to develop a framework for combining current technologies, computing advances, data sources, and social media and (2) develop and test an online web mapping interface. The mapping interface integrates Microsoft Silverlight, Bing Maps, ArcGIS Server, Google Picasa Web Albums Data API, RSS, Google Analytics, and Facebook to create a rich user experience. The website allows the public to upload photos and attributes of their own subdivisions or sites they have identified and explore other submissions. The website was made available to the public in early February 2011 at http://www.AbandonedDevelopments.com and evaluated for its potential long-term success in a pilot study.

Bu, abonelik içeriğinin bir önizlemesidir, kurumunuz aracılığıyla erişilir.


Videoyu izle: OSI Model OSI Reference Model. وكيف يتم نقل البيانات The 7 Layers شرح


Yorumlar:

  1. Prewitt

    Tebrikler, sözler ne ..., harika fikir

  2. Baran

    Bence yanılıyorsun. Bana PM'de yaz, konuşacağız.

  3. Tazuru

    Siteyi, sizi ilgilendiren çok sayıda makale ile ziyaret etmenizi öneririm.

  4. Vurn

    Bu sadece muhteşem bir fikir

  5. Fearghus

    Demek istediğim yanılıyorsun. Bana PM'de yaz, konuşacağız.

  6. Vijora

    evet doğru söyledin



Bir mesaj yaz