目前,我使用下面的代码生成XML和JSON数据:如何获取.net 3.5自动生成基于RSS订阅源的JSON数据?
public class App
{
public string app_name;
public string app_path;
public App(string m_app_name, string m_app_path)
{
app_name = m_app_name;
app_path = m_app_path;
}
public App() { }
}
[ScriptService]
public class Apps : WebService {
List<App> App = new List<App>();
SqlConnection connection;
SqlCommand command;
SqlDataReader reader;
[WebMethod()]
public List<App> GetUserApps()
{
var apps = new List<App>();
using (connection = new SqlConnection(ConfigurationManager.AppSettings["connString"]))
{
using (command = new SqlCommand(@"some query here", connection))
{
connection.Open();
using (reader = command.ExecuteReader())
{
int AppNameIndex = reader.GetOrdinal("application_name");
int AppPathIndex = reader.GetOrdinal("application_path");
while (reader.Read())
{
apps.Add(new App(reader.GetString(AppNameIndex), reader.GetString(AppPathIndex)));
}
}
}
}
return apps;
}
}
如果我再使用application/json; charset=utf-8
,我自动获得JSON数据请求这个在JavaScript。
我的问题是,我需要从外部RSS提要获取数据,而不是本地数据库,并将其转换为json数据,以便我可以使用JavaScript以相同的方式调用它。
任何人都知道如何使用上面类似的代码捕获RSS提要http://www.hotukdeals.com/rss/hot
?
所以我想你需要1.阅读你的RSS提要2.将RSS结构转换为你想要的JSON结构3.把这段代码放入一个Web服务4.设置它缓存结果或缓存RSS数据读取。这听起来不是特别困难 - 你坚持的是哪一部分?或者,如果您更乐意从数据库中提供数据,那么您总是可以写一份工作来获取您的RSS数据并将其添加到数据库中,然后您可以将其提供。这也可以让你控制你的JSON提要中的记录数量。 – Rup 2012-07-09 10:04:25
不应该从rss到json的转换自动发生,类似于我自动将上述代码中的sql转换为json的方式吗?基本上,我想在上面的代码中使用相同的概念,但是从获取数据库中的数据并改为使用rss提要进行更改。 – oshirowanen 2012-07-09 10:07:07
该代码不会自动从SQL转换,而是从您从数据库中读取的'App'结构列表转换而来。将你的RSS数据读入类似的结构,它会自动输出JSON,是的 - 但你仍然需要自己读取数据。 – Rup 2012-07-09 10:09:17