पर प्रमाण पत्र पास करना मैं सी # में काफी नया हूं और मेरी अंग्रेजी बहुत अच्छी नहीं है - अगर मुझे कोई बिंदु याद आती है तो पहले से खेद है।एसक्यूएल रिपोर्ट सर्वर 2008
मैंने ReportService
नियंत्रण के साथ एक एएसपी.NET वेबसाइट बनाने की कोशिश की। जैसा कि आप पहले से ही जानते हैं, एसएसआरएस 2008 अज्ञात लॉगिन की अनुमति नहीं देता है। इसलिए, मैंने एसएसआरएस को प्रमाण पत्र पास करने का प्रयास किया जो मेरे वेब पेज के अंदर संग्रहीत किया जाएगा ताकि उपयोगकर्ता लॉग इन किए बिना रिपोर्ट देख सकें।
मुझे नीचे दिया गया कोड मिला और इसे मेरे WebForm
पर रखा गया, लेकिन मैं ' मुझे रिपोर्ट पैरामीटर के साथ समस्या है।
अगर कोई रिपोर्ट पैरामीटर के लिए डिफ़ॉल्ट मान रहे हैं, नीचे दिए गए कोड ठीक काम करता है।
लेकिन, अगर मैं एक पैरामीटर का मान बदलने की कोशिश, पूरे पृष्ठ
ताजा है और इससे पहले कि मैं "रिपोर्ट देखें" बटन क्लिक करें, सभी
मापदंडों डिफ़ॉल्ट या शून्य मान पर रीसेट कर रहे हैं।
पूरे पृष्ठ को रीफ्रेश करने से बचने के तरीके पर कोई सुझाव, या एसएसआरएस में लॉगिन जानकारी पास करने का दूसरा तरीका? आपका अग्रिम रूप से बोहोत धन्यवाद।
using System;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Net;
using Microsoft.Reporting.WebForms;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
ReportViewer1.Width = 800;
ReportViewer1.Height = 600;
ReportViewer1.ProcessingMode = ProcessingMode.Remote;
IReportServerCredentials irsc =new CustomReportCredentials("administrator", "MYpassworw", "domena");
ReportViewer1.ServerReport.ReportServerCredentials = irsc;
ReportViewer1.ServerReport.ReportServerUrl = new Uri("http://192.168.0.1/ReportServer/");
ReportViewer1.ServerReport.ReportPath = "/autonarudzba/listanarudzbi";
ReportViewer1.ServerReport.Refresh();
}
}
public class CustomReportCredentials : IReportServerCredentials
{
private string _UserName;
private string _PassWord;
private string _DomainName;
public CustomReportCredentials(string UserName, string PassWord, string DomainName)
{
_UserName = UserName;
_PassWord = PassWord;
_DomainName = DomainName;
}
public System.Security.Principal.WindowsIdentity ImpersonationUser
{
get { return null; }
}
public ICredentials NetworkCredentials
{
get { return new NetworkCredential(_UserName, _PassWord, _DomainName); }
}
public bool GetFormsCredentials(out Cookie authCookie, out string user,
out string password, out string authority)
{
authCookie = null;
user = password = authority = null;
return false;
}
}
क्या आप वाकई एसएसआरएस 2008 से बेनामी ऑथ छोड़ चुके हैं? आपको इसे आईआईएस में कॉन्फ़िगर करने की आवश्यकता हो सकती है? – RobS
से: http://blogs.msdn.com/jameswu/archive/2008/07/15/anonymous-access-in-sql-rs-2008.aspx तो पुराने पुराने अज्ञात प्रमाणीकरण के साथ क्या हुआ आरएस 2005? संक्षिप्त जवाब यह है कि यह अब समर्थित नहीं है। – adopilot