Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- namespace somename
- {
- public class Functions
- {
- private static CookieContainer container = new CookieContainer();
- public CookieContainer CookieContainer
- {
- get { return container; }
- set { container = value; }
- }
- // Function to return a web URL as a string value.
- [Microsoft.SqlServer.Server.SqlFunction(DataAccess = DataAccessKind.Read)]
- public static SqlString GetCSTResults(SqlString uri, SqlString username, SqlString passwd)
- {
- // The SqlPipe is how we send data back to the caller
- SqlPipe pipe = SqlContext.Pipe;
- SqlString document;
- //Login
- document = Login(Convert.ToString(uri));
- //GetTicket
- //GetTicketResulGuid
- //GetXMLFileResult
- // .. and return the output to the caller.
- return (document);
- }
- private static SqlString Login(String uri)
- {
- SqlString result;
- // Set up the request, including authentication
- WebRequest req = WebRequest.Create(Convert.ToString(uri));
- ((HttpWebRequest)req).UserAgent = "CLR web client on SQL Server";
- var request = req as HttpWebRequest;
- if (request != null)
- {
- request.CookieContainer = container;
- }
- WebResponse resp = req.GetResponse();
- Stream dataStream = resp.GetResponseStream();
- StreamReader rdr = new StreamReader(dataStream);
- result = (SqlString)rdr.ReadToEnd();
- // Close up everything...
- rdr.Close();
- dataStream.Close();
- resp.Close();
- // .. and return the output to the caller.
- return (result);
- }
- }
- }
Add Comment
Please, Sign In to add comment