Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/270.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 编写windows桌面应用程序(.exe)-听起来正确吗?_C#_Vb.net_Windows_Google Maps_Desktop - Fatal编程技术网

C# 编写windows桌面应用程序(.exe)-听起来正确吗?

C# 编写windows桌面应用程序(.exe)-听起来正确吗?,c#,vb.net,windows,google-maps,desktop,C#,Vb.net,Windows,Google Maps,Desktop,我是一名实习生,在工作中从事一个项目。我的老板他没有技术背景(工作中的其他员工也没有),所以我真的没有人可以问 现在,我们有一堆包含数据(发货数据)的excel文件。通常,我们在excel中获取数据,然后手动将数据转换到地图上。例如,我们可以从“位置X”的谷歌地图中截取一个屏幕快照,然后注释: A楼上有一个标有10的红色圆圈,对应A楼10批番茄酱 在B楼有一个绿色正方形,上面有一个5,相当于B楼有5批苹果 C楼上的黑色箭头表示C楼收到的货物最多 等等 更多信息: 总共大约有30种不同的符号

我是一名实习生,在工作中从事一个项目。我的老板他没有技术背景(工作中的其他员工也没有),所以我真的没有人可以问

现在,我们有一堆包含数据(发货数据)的excel文件。通常,我们在excel中获取数据,然后手动将数据转换到地图上。例如,我们可以从“位置X”的谷歌地图中截取一个屏幕快照,然后注释:

  • A楼上有一个标有10的红色圆圈,对应A楼10批番茄酱
  • 在B楼有一个绿色正方形,上面有一个5,相当于B楼有5批苹果
  • C楼上的黑色箭头表示C楼收到的货物最多
  • 等等
更多信息:

  • 总共大约有30种不同的符号
  • 有超过100个位置。数据文件中给出了位置的地址
  • 每个图表都是针对一周(或一个月)的
我想使这一过程自动化,使之对工作中的其他员工友好。下面是我关于如何开发这个应用程序的思考过程

  • 我们只使用基于Windows(特别是Windows 7)的系统
  • 我想开发一个桌面应用程序。在Visual Studio中使用VB.net或C#(不确定哪一个更好)
  • 该应用程序将获取一个excel文件并从中提取数据。它将覆盖位置图像上的任何符号
  • 图像的位置可以来自用户输入的屏幕截图,也可以通过编程从谷歌地图(取决于谷歌地图集成是否可行)中获取
我的问题是:

  • Visual Studio+VB.net/C是这个项目的好选择吗
  • 它能处理excel文件吗?(或者我正朝着一个完全错误的方向前进)
  • 谷歌地图集成是否可行
  • 有什么建议吗
(还有,我的老板说我们可以雇佣一个承包商来做这项工作,但我真的很想试试看)

Visual Studio+VB.net/C是这个项目的好选择吗

是的,你可以使用这些语言中的任何一种来实现你的目标。我建议使用C#,因为我个人认为它更容易学习,更直观,你可以在网上玩更多的工具、示例和文档(这在VB中是不可能的)。使用C#是个人观点,但回答你的问题:是的,你可以使用它们

它能处理excel文件吗?(或者我正朝着一个完全错误的方向前进)

这两种语言都具有加载
.xls
(以及许多其他格式)并从中读取和处理数据的功能。实际上,您的excel将充当数据库,因为您的数据存储在那里。一种很好的方法是在服务器中创建一个数据库(每台计算机都可以访问该数据库),然后开始创建表单,这样您的团队就可以使用它输入数据(不再需要excel)。但这只是一种可能性,需要考虑一下,这不是现在的要求,你仍然可以使用你的excel

谷歌地图集成是否可行

对。Google提供了许多用于集成的API。一个选项是使用它们的,它允许您提供位置或横向/纵向,配置缩放、标记甚至路径来连接这些标记。您执行一个HTTP请求并获得一个图像(默认情况下,它们提供PNG,但您可以提供所需的格式)

请参见以下简单示例:

在免费使用的情况下(我写这篇文章的那天),每天的使用限制是25000个请求和640x640个最大分辨率,以避免滥用,但是如果您需要每天发出25000个以上的请求或需要更好的分辨率,您可以获得许可证

您可以查看更多详细信息



这不是一项容易的任务,但却是一项有趣的挑战。如果您不熟悉C#和编程语言,您可以先创建一个小系统,让您的团队输入他们在您的系统中输入的所有内容,这样您就可以存储在数据库中并停止使用excel,这只是一个练习。

听起来很有趣,当然也可以在C#或VB.Net中使用。两者都不是更好的,尽管你可以在C#中在线找到更多的示例代码。唯一让我担心的是,你说这些地点的地址在数据文件中给出了。不知何故,您需要将其转换为Lat和Long,以便将其定位在地图上或类似的位置。这方面需要进行一些研究,但这与语言选择无关。@peterG如果有地址,他可以通过API调用获得lat和long。我建议VB.NET:这种语言比C#更通用,但如果excel文件是“干净的VBA”,它将允许您保留大量VBA代码。否则。。。无论你在excel中做什么,你都可以在.NET中做,而.NET(VB或C#)绝对是一个不错的选择。谢谢你的建议!很高兴知道我正朝着正确的方向前进。事实上,我对C和web开发(以及谷歌地图)都有一定的经验。我很喜欢你关于数据库的想法——虽然现在一切都在Excel上,但我认为将所有新数据移动到Microsoft Access等数据库格式会很好