我们有几个国际合作伙伴/网站,他们抱怨他们的流量被我们的国内网站(位于美国)"被盗"。我认为最好实施免费的GeoIP服务,以便在我们的国内网站上为我们的国际用户提供重定向选项。
。研究了免费选项后,我发现MaxMind提供了一个完整的软件包,其中包含一个选择,以提供相当准确的iPaddress数据(包括IPv4和IPv6)。实际上,我们的管理层强烈建议使用MaxMind的实施。
我最近下载了MaxMind的免费geolitecity.dat和Github的C#代码。我发现该文档非常模糊,因为它与在控制台应用程序以外的任何其他内容上实现其C#代码有关。
在我在当前网站上实施它之前 - 在我的开发环境中,我成功地测试了数据库的实现,以及在控制台应用程序上的API,然后在ASPX页面上成功地测试了模拟网站的ASPX页面。我目前正在经历我的开发环境中错误的"对象引用未设置为对象的实例"。
我添加了MaxMind的类库,还添加了对该类库的引用。
在使用C#代码时,是否有人会遇到实现MaxMind数据的问题?是否有人成功地在WebForm上使用了MaxMind的数据和C#代码?感谢任何见解。如果您可以提供实施过程的演练,也许还有一些适合您的示例C#代码,我将非常感谢。
我必须指定完整的文件系统路径才能使其读取数据库!我可能错过了一些东西,但是相对路径无论如何都无法工作!
var reader = new DatabaseReader(@"C:Users[User Name]documentsvisual studio 2013ProjectsglocalmvcglocalmvcControllersGeoLite2_City.mmdb", MaxMind.Db.FileAccessMode.Memory);
var omni = reader.Omni("1.1.1.1"); // replace it with a real ip address
工作后,它没有返回城市名称,只有国家!多么浪费时间!:(