小编eho*_*er0的帖子

在Windows Phone 8 Bing地图上设置图钉(XAML C#)

我试图做一个简单的示例应用程序建立在更高版本的Windows Phone 8,我要创造我的MainPage.xaml中一个兵地图,以点为中心(37.227700,-80422037),并图钉已填充在地图上(不是用户添加的,只是基于我目前硬编码的一些动态数据预先填充的特定位置的标记).当我运行我的代码时,它会进入页面并加载地图,但不显示任何引脚.此外,尽管我在xaml中设置了ZoomLevel属性,但地图根本没有放大.我是这种编码范式的新手,所以必须有一些我不知道的东西.这是我在xaml和c#文件中的内容:

MainPage.xaml.cs(仅显示构造函数,但我没有其他简单的方法)(你可以看到注释掉的部分,我尝试了多种方法,但没有一种方法有效)

public MainPage()
    {
        InitializeComponent();
        Map myMap = new Map();
        MapLayer layer0 = new MapLayer();

        Pushpin pushpin0 = new Pushpin();
        //Pushpin pushpin0 = (Pushpin)this.FindName("pushpin0");
        //Pushpin pushpin0 = MapExtensions.GetChildren(myMap).OfType<Pushpin>().First(p => p.Name == "pushpin0");
        //if (pushpin0 == null) { pushpin0 = new Pushpin(); }
        pushpin0.GeoCoordinate = new GeoCoordinate(37.228510, -80.422860);
        MapOverlay overlay0 = new MapOverlay();
        overlay0.Content = pushpin0;
        overlay0.GeoCoordinate = new GeoCoordinate(37.228510, -80.422860);
        layer0.Add(overlay0);

        Pushpin pushpin1 = new Pushpin();
        pushpin1.GeoCoordinate = new GeoCoordinate(37.226399, -80.425271);
        MapOverlay overlay1 = new MapOverlay();
        overlay1.Content …
Run Code Online (Sandbox Code Playgroud)

c# xaml bing-maps pushpin windows-phone-8

5
推荐指数
1
解决办法
8445
查看次数

如何为Flask Post单元测试Python复制Multidict

因此,在我的烧瓶应用程序中,前端有一个表单,其中填充了多个用户。每个用户都与一个名为“ selected_user”的复选框相关联。提交后,该表单将通过标准HTML表单控件发布(不得使用任何javascript或手动ajax)。

在后端,我可以使用

flask.request.form.getlist('selected_user')
Run Code Online (Sandbox Code Playgroud)

并返回我期望的用户列表(这里的用户本身就是唯一键和关联值的字典)。

打印出flask.request.form如下所示:

ImmutableMultiDict([
  ('_xsrf_token', u'an_xsrf_token_would_go_here'),
  ('selected_user', u'{u\'primaryEmail\': u\'some_value\'}'...),
  ('selected_user', u'{u\'primaryEmail\': u\'some_value\'}'...)])
Run Code Online (Sandbox Code Playgroud)

我的问题是,我似乎无法终生在单元测试中复制这种格式。显然,我可以使用一些javascript将前端的已检查用户捆绑到一个数组中或其他任何东西,然后在后端上更容易地复制该区域,这很可能是我最终要做的事情,但这似乎是不必要的麻烦只是为了使该功能在我的应用程序中表现良好时就可以对其进行测试。

这是我目前在测试中尝试过的内容,似乎应该是正确的答案,但它不起作用:

mock_users = []
for x in range(0, len(FAKE_EMAILS_AND_NAMES)):
  mock_user = {}
  mock_user['primaryEmail'] = FAKE_EMAILS_AND_NAMES[x]['email']
  mock_user['name'] = {}
  mock_user['name']['fullName'] = FAKE_EMAILS_AND_NAMES[x]['name']
  mock_users.append(mock_user)

data = {}
data['selected_user'] = mock_users

response = self.client.post(flask.url_for('add_user'), data=data,
                            follow_redirects=False)
Run Code Online (Sandbox Code Playgroud)

这给我一个错误,如下所示:

add_file() got an unexpected keyword argument 'primaryEmail'
Run Code Online (Sandbox Code Playgroud)

我还尝试将这些作为查询字符串发送,作为json.dumps(data)发送数据,将每个模拟用户编码为元组,如下所示:

data = []
for x in range(0, 3):
  my_tuple = ('selected_user', mock_users[x])
  data.append(my_tuple)
Run Code Online (Sandbox Code Playgroud)

这些方法都无法解决其他各种错误。我在这里想念什么?提前感谢您的帮助!另外,如果有明显的语法错误,请您谅解,因为我将其中一些重写为SO,而不是复制粘贴。

python post unit-testing flask

5
推荐指数
1
解决办法
648
查看次数

标签 统计

bing-maps ×1

c# ×1

flask ×1

post ×1

pushpin ×1

python ×1

unit-testing ×1

windows-phone-8 ×1

xaml ×1