diff --git a/TwitterPractice/TwitterPractice/Controllers/HomeController.cs b/TwitterPractice/TwitterPractice/Controllers/HomeController.cs
index 9e0c2d8..f22aba8 100644
--- a/TwitterPractice/TwitterPractice/Controllers/HomeController.cs
+++ b/TwitterPractice/TwitterPractice/Controllers/HomeController.cs
@@ -1,8 +1,5 @@
-using System;
-using System.Configuration;
-using System.Net;
-using System.Web.Mvc;
-using Newtonsoft.Json.Linq;
+using System.Web.Mvc;
+using TwitterPractice.Models;
namespace TwitterPractice.Controllers
@@ -10,12 +7,13 @@ namespace TwitterPractice.Controllers
public class HomeController : Controller
{
private static string title = "Twitter Practice!";
- private static string requestTemplate;
+ private string requestTemplate;
+ private TwitterModels _twitterModels;
public HomeController()
: base()
{
- requestTemplate = ConfigurationManager.AppSettings["TwitterRequestTemplate"];
+ _twitterModels = new TwitterModels();
}
public ActionResult Index()
@@ -26,18 +24,17 @@ namespace TwitterPractice.Controllers
string username = Request.QueryString["username"];
if (null == username)
{
- username = "meatballhat";
+ ViewBag.UserTimeline = null;
+ ViewBag.Username = null;
}
- ViewBag.UserTimeline = GetTwitterStream(username);
- ViewBag.Username = username;
+ else
+ {
+ ViewBag.UserTimeline = _twitterModels.GetTwitterStream(username);
+ ViewBag.Username = username;
+ }
return View();
}
- private JArray GetTwitterStream(string username="meatballhat")
- {
- string requestUrl = String.Format(requestTemplate, username);
- WebClient req = new WebClient();
- return JArray.Parse(req.DownloadString(requestUrl));
- }
+
}
}
diff --git a/TwitterPractice/TwitterPractice/Models/TwitterModels.cs b/TwitterPractice/TwitterPractice/Models/TwitterModels.cs
new file mode 100644
index 0000000..40e9b1e
--- /dev/null
+++ b/TwitterPractice/TwitterPractice/Models/TwitterModels.cs
@@ -0,0 +1,23 @@
+using System;
+using System.Configuration;
+using System.Net;
+using Newtonsoft.Json.Linq;
+
+namespace TwitterPractice.Models
+{
+ public class TwitterModels
+ {
+ private string requestTemplate;
+ public TwitterModels()
+ {
+ requestTemplate = ConfigurationManager.AppSettings["TwitterRequestTemplate"];
+ }
+
+ public JArray GetTwitterStream(string username = "meatballhat")
+ {
+ string requestUrl = String.Format(requestTemplate, username);
+ WebClient req = new WebClient();
+ return JArray.Parse(req.DownloadString(requestUrl));
+ }
+ }
+}
\ No newline at end of file
diff --git a/TwitterPractice/TwitterPractice/TwitterPractice.csproj b/TwitterPractice/TwitterPractice/TwitterPractice.csproj
index 47cbf53..0abfce7 100644
--- a/TwitterPractice/TwitterPractice/TwitterPractice.csproj
+++ b/TwitterPractice/TwitterPractice/TwitterPractice.csproj
@@ -71,6 +71,7 @@
Global.asax
+
diff --git a/TwitterPractice/TwitterPractice/Views/Home/Index.cshtml b/TwitterPractice/TwitterPractice/Views/Home/Index.cshtml
index 577d7bb..85e0a84 100644
--- a/TwitterPractice/TwitterPractice/Views/Home/Index.cshtml
+++ b/TwitterPractice/TwitterPractice/Views/Home/Index.cshtml
@@ -1,6 +1,12 @@
@using Newtonsoft.Json.Linq;
@{ViewBag.Title = "Home Page";}
+
+
@ViewBag.Message
@if (ViewBag.HasQsVars)
{
@@ -12,10 +18,13 @@
}
}
-
+
+@if (null != ViewBag.Username)
+{
user timeline for @ViewBag.Username
+
@foreach (JObject entry in ViewBag.UserTimeline)
{
@@ -24,6 +33,5 @@
}
-
-
-
\ No newline at end of file
+
+}
\ No newline at end of file