在ArcGIS中将c#与JavaScript结合使用

用户名

我是ArcGIS的新手。我正在使用API​​在地图上为位置添加书签。单击特定位置(例如,戈尔韦湾)后,地图将放大到该位置。

                      <script>
    dojo.require("dijit.layout.BorderContainer");
    dojo.require("dijit.layout.ContentPane");
    dojo.require("dijit.form.DropDownButton");
    dojo.require("esri.map");
    dojo.require("esri.dijit.Bookmarks");
    dojo.require("esri/dijit/HomeButton");
    dojo.require("dojo/domReady!");

    var map, bookmarks, home;
    function init() {
        map = new esri.Map("map", {
            basemap: "oceans",
            center: [-7.5, 53],
            zoom: 6
        });

用户可以选择的位置列表是使用JavaScript生成的,如下例所示。您可以使用空间参考在地图上定位一个点,然后为其命名。

        // Bookmarks can be specified as an array of objects with the structure:
        // { extent: <esri.geometry.Extent>, name: <some string> }
        var bookmarks_list = [{
            "extent": {
                "spatialReference": {
                    "wkid": 102100
                },
                "xmin": -1882000,
                "ymin": 6638000,
                "xmax": -316000,
                "ymax": 7583000
            },
            "name": "Full View....."
        }, {
            "extent": {
                "spatialReference": {
                    "wkid": 102100
                },
                "xmin": -1020761,
                "ymin": 7009798,
                "xmax": -996800,
                "ymax": 7048100
            },
            "name": "Galway Bay"
        }, {
            "extent": {
                "spatialReference": {
                    "wkid": 102100
                },
                "xmin": -939400,
                "ymin": 6756000,
                "xmax": -890400,
                "ymax": 6785500
            },
            "name": "Cork Harbour"
        }, {
            "extent": {
                "spatialReference": {
                    "wkid": 102100
                },
                "xmin": -1123000,
                "ymin": 6839100,
                "xmax": -1074100,
                "ymax": 6868600
            },
            "name": "Tralee Bay"
        } ];


        // Create the bookmark widget
        bookmarks = new esri.dijit.Bookmarks({
            map: map,
            bookmarks: bookmarks_list
        }, dojo.byId('bookmarks'));


    //show map on load 
    dojo.ready(init);
    home.startup();


</script>

我的问题是,如何获取JavaScript“名称”值(例如,戈尔韦湾)并将其传递给ac#函数?您如何关联c#和JavaScript?我对此并不陌生,所以我将不胜感激任何建议,谢谢

凯特

正如您提到的C#和JavaScript,我的猜测是您将应用程序托管在.Net环境中。但是,JavaScript API仅在客户端运行,因此我不确定您要使用C#实际做什么吗?如果您希望服务器端响应客户端上发生的某些事情而做某事,那么您可能希望调用服务器上运行的Web服务器并为其提供任何客户端属性。我为此使用.Net Web API。

您可能想阅读更多有关以下内容的信息:

  1. ESRI JavaScript API(https://developers.arcgis.com/javascript/),
  2. 用于调用Web服务的dojo请求模块(http://dojotoolkit.org/documentation/tutorials/1.10/ajax/
  3. ASP.Net Web API(http://www.asp.net/web-api/overview/getting-started-with-aspnet-web-api/tutorial-your-first-web-api)。

另一件事:我注意到您使用的是较旧的Dojo语法(v1.7之前的版本),考虑到ESRI甚至Dojo本身还没有将其所有教程都更新为1.7+语法,这是一个容易犯的错误。但是,如果您要开始一个新项目,那么从一开始就应该使用新语法。dojo站点上还有另一本关于差异的教程(与上面相同的链接,请向上一级)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

结合C#和javascript代码

来自分类Dev

是否可以在JavaScript中将for循环与setTimeOut结合使用?

来自分类Dev

如何在C ++中将cmake与freopen结合使用?

来自分类Dev

结合重复C#

来自分类Dev

如何在C#中将组合框与可移动驱动程序列表结合

来自分类Dev

与SpecFlow,Selenium和C#结合使用的量角器

来自分类Dev

C#示例将DynamicTemplates与NEST和ElasticSearch结合使用

来自分类Dev

将ITestOutputHelper与Selenium,xUnit和C#结合使用

来自分类Dev

在C#中结合使用客户端代理

来自分类Dev

C# - 将反射与 JsonSchema4.FromTypeAsync 结合使用

来自分类Dev

在JavaScript中将for循环与计时事件结合

来自分类Dev

在JavaScript中将for循环与计时事件结合

来自分类Dev

在C#中将SQLite与异步配合使用

来自分类Dev

在浏览器(javascript)中将Cognito凭证与AWS结合使用时,不断收到“缺少凭证”错误

来自分类Dev

在Swift中将UIScrollView与UIVisualEffectView(UIBlurEffect)结合使用

来自分类Dev

在NSFetchRequestController中将NSFetchRequest与复杂的NSPredicate结合使用

来自分类Dev

在Android中将SOAP与WSDL结合使用

来自分类Dev

在MongoDB中将ObjectId与Mongoose结合使用

来自分类Dev

在Elasticsearch中将MinimumShouldMatch与术语查询结合使用

来自分类Dev

如何在xpath中将not()与'and'结合使用

来自分类Dev

在Haskell中将Writer monad与Conduit结合使用

来自分类Dev

如何在PLPGSQL中将WITH与FOR循环结合使用?

来自分类Dev

在dplyr中将变量与.data [[]]结合使用

来自分类Dev

在Java中将BoxLayout Manager与JLabels结合使用

来自分类Dev

在Android中将SOAP与WSDL结合使用

来自分类Dev

在MongoDB中将ObjectId与Mongoose结合使用

来自分类Dev

在Excel中将XIRR与计算的日期结合使用

来自分类Dev

如何在xpath中将not()与'and'结合使用

来自分类Dev

结合使用Babel和JavaScript

Related 相关文章

  1. 1

    结合C#和javascript代码

  2. 2

    是否可以在JavaScript中将for循环与setTimeOut结合使用?

  3. 3

    如何在C ++中将cmake与freopen结合使用?

  4. 4

    结合重复C#

  5. 5

    如何在C#中将组合框与可移动驱动程序列表结合

  6. 6

    与SpecFlow,Selenium和C#结合使用的量角器

  7. 7

    C#示例将DynamicTemplates与NEST和ElasticSearch结合使用

  8. 8

    将ITestOutputHelper与Selenium,xUnit和C#结合使用

  9. 9

    在C#中结合使用客户端代理

  10. 10

    C# - 将反射与 JsonSchema4.FromTypeAsync 结合使用

  11. 11

    在JavaScript中将for循环与计时事件结合

  12. 12

    在JavaScript中将for循环与计时事件结合

  13. 13

    在C#中将SQLite与异步配合使用

  14. 14

    在浏览器(javascript)中将Cognito凭证与AWS结合使用时,不断收到“缺少凭证”错误

  15. 15

    在Swift中将UIScrollView与UIVisualEffectView(UIBlurEffect)结合使用

  16. 16

    在NSFetchRequestController中将NSFetchRequest与复杂的NSPredicate结合使用

  17. 17

    在Android中将SOAP与WSDL结合使用

  18. 18

    在MongoDB中将ObjectId与Mongoose结合使用

  19. 19

    在Elasticsearch中将MinimumShouldMatch与术语查询结合使用

  20. 20

    如何在xpath中将not()与'and'结合使用

  21. 21

    在Haskell中将Writer monad与Conduit结合使用

  22. 22

    如何在PLPGSQL中将WITH与FOR循环结合使用?

  23. 23

    在dplyr中将变量与.data [[]]结合使用

  24. 24

    在Java中将BoxLayout Manager与JLabels结合使用

  25. 25

    在Android中将SOAP与WSDL结合使用

  26. 26

    在MongoDB中将ObjectId与Mongoose结合使用

  27. 27

    在Excel中将XIRR与计算的日期结合使用

  28. 28

    如何在xpath中将not()与'and'结合使用

  29. 29

    结合使用Babel和JavaScript

热门标签

归档