Web Forms :: SiteMap.CurrentNode Returns Null For Internal SiteMapProvider?
Mar 7, 2010
I've run into an issue where calling SiteMap.CurrentNode returns null when it really shouldn't be. I'm using SiteMap.CurrentNode to highlight certain buttons on the page and generate a sub navigation bar (through SiteMap.CurrentNode.ChildNodes).
Now this works until I attempt to get to my pages of which are generated by a dynamic provider. For some reason whenever I attempt this on my Projects page SiteMap.CurrentNode returns null. Overall this is a bad situation for my program because then I cant generate my sub-navigation bar.
I was hoping someone here might be able to figure out the fault in my Sitemap or provider so that I can do a basic tutorial to others who are attempting the same thing since I haven't seen a tutorial that implements a provider in the manner that I have.
Web.SiteMap:
<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
<siteMapNode url="~/Default.aspx" title="Home" description="Home page where updates and other information can be found">
<siteMapNode provider="ProjectProvider" />
<siteMapNode url="~/Contact/Default.aspx" title="Contacts" description="Contacts" />
</siteMapNode>.......
Provider:
Implements the following methods and all of them do not return Null (I checked via debug):
- RootNode
- GetRootNodeCore
- Initialize
- Clear
- BuildSiteMap
i am developing website in which i am using web.sitemap to create breadcrumbs now the problem is that when i use to debug the nodes the internal links come null
However, now I want to be able to create multiple web.sitemap files, and then programmatically determine which web.sitemap file to use, but I can't seem to find out how to do this. I'm assuming I could either create one custom SiteMapProvider that can perform the logic to determine which web.sitemap file to load, or I have multiple providers, each one with the SiteMapFile property set to a specific *.sitemap file, and then switch providers programmatically before I access SiteMap.RootNode.
I have a SiteMap navigation using an asp:repeater control databound to a SiteMapDataSource. The repeater contains an asp:hyperlink for each node, and the CssClass is explicitly defined:
[Code]....
How would I cause the item that corresponds to the current node on the sitemap tree to have a different CssClass? I've had a few unsuccessful attempts (stab in the dark in all honesty) using the ItemDataBound event handler and inline code.
I've added a subarea to my sitemap in CRM 4.0, and for absolute URLs it works as expected. However, for relative URLs it does not. The page in question is internal and is accessed through:
I have a gridview. In the rowupdating event, the txtbox returns null. I have enabled viewstate for the gridview. But still it does not work. I have made this in Kentico.
Since I am not using a DataSourceId at the markup I am having to create my own Sorting handler. I found a sample on MSDN but the variable 'dataTable' always returns null why?
Like the title says, when I try to get a control (HiddenField) using this.Parent.FindControl it returns an exception. Curiosly this only happens when I change the browser language to Italian, English but not Spanish (I'm from Argentina so everything in my computer is spanish).
I have a treeView on my main page. While the page is postback the method TreeView.FindNode works fine. But when i return to main page from another, and loading ValuePath from session it returns null.
here is my treeView [Code]....
Code behind to save values in session on Page_Load:
[Code]....
Code behind to select TreeNode after return from other page on PageLoad
Our application uses the Enterprise Library's PropertyProxyValidator class to validate user input (v4.1 - Oct 2008). On occassion, the code will raise an exception saying the source type cannot be found. This error persists until the application pools recycle at night, at which point everything works again. It tends to only affect one of the web front ends at a time (there are two). I tracked down where the exception was being raised, and this is the section of code:
[Code]....
(As you can see, the value for this.SourceTypeName is shown in the exception and I've checked that it matches exactly.)
We have never been able to reproduce this exception and at this point don't have any ideas left as far as causes. For a while, my suspicion was that it was related to the Temporary ASP.NET Files folder. The last time the error occurred, I copied that folder from both web front ends. Then the next day when things were back to normal, I copied the folders. When I did a directory and file comparision of the affected web front end, I found no differences.
Our application is essentially user controls hosted in web parts on SharePoint (they don't do anything with SharePoint - in fact, for a while, we were developing the controls on ASPX pages). There are two servers in the farm, both with Windows Server 2003 R2 Standard x64, IIS 6, and .NET v3.5. This issue doesn't strike me as a problem with Enterprise Library or SharePoint, hence why I've posted here, but more so with assembly loading.
Any ideas for causes would be greatly appreciated. I could also use suggestions on tools I could use to try and debug this when happens again (it happens 2-3 times a month) in production.
I have a very strange issue where SelectionList always returns NULL when i try check its Selected Item/Value. I Googled a bit and I found out that when i click the submit button, the page is being refreshed and the SelectionList is being data bound again so it will revert back to its original behavior.
Then i tried enclosing the binding code in the Page_Load event in a !IsPostBack but still when i try to access the Selected property it is null and an exception is thrown.
My code goes something like this... (the braces are not matched properly)
Im dynamically creating several dropdowns onclick of a button... but the dropdown returns null when im trying to get the values on submitting the form... i read tat during postback all dynamically created controls will be lost... s there a way to register the controls... i want to access the item selected in the dropdown .... expecting a positive reply...
I am working on a mvc project, and having problem with json. i have created a demo project with list of colors
public JsonResult GetResult() { List<string> strList = new List<string>(); strList.Add("white"); strList.Add("blue"); strList.Add("black"); strList.Add("red"); strList.Add("orange"); strList.Add("green"); return this.Json(strList); } i am able to get these on my page, but when i try to delete one color, that is when i send the following using jquery function deleteItem(item) { $.ajax({ type: "POST", url: "/Home/Delete/white", data: "{}", contentType: "application/json; charset=utf-8", success: ajaxCallSucceed, dataType: "json", failure: ajaxCallFailed }); }
the controler action public JsonResult Delete(string Color) {} Color always returns null, even if i have specified "/Home/Delete/white" in the url. i know i am doing something wrong or missing something, but not able to find out what.
I have a class library which has my LINQ doc in it. I added a stored procedure and I get the following in my .dbml.layout :
[Code]....
I include a reference to the dll of the class library to my web project and I get an error about value being returned as int where I am trying to put contents into a datalist or similar.
Code in class that calls this SP :
[Code]....
So I switched code to the following in my dbml.layout document :
I have a DataTable for which a PrimaryKey constraint has been set to be a combination of an integer column and a datetime column. When I try to 'Find' a row by saying,
dtFunds.Rows.Find(iContainerIndex)
I get a null value. iContainerIndex has been defined as an object array of size 2 with the integer ID and date values in it.
When I set a breakpoint in my code, I see that the very same values are present in the datatable.
If I try to execute, DataTable.Select() method with the integer column filter, I get a result - but returns no result when called with the date column filter.
What am I doing wrong here? The very same DateTime value is present in the datatable.
I want to use multiple targets with my ModalPopUp extender. One of my buttons is set as target in the ModalPopup and the other one will use server-side code to show the ModalPopup.
Then I found this little tutorial on the ASP.NET AJAX site.But when I use $find("modalInform") in the pageLoad Javascript function (as defined in the tutorial at the bottom), I'm always getting a $find("modalInform") is null error.
This code is included in a usercontrol, the usercontrol is used in a ASPX page and this ASPX-page uses a MasterPage. I've noticed that if I'm using
<%= modalInform.ClientID %>
I'm getting a different value then defined in my HTML-source (propably because of the MasterPage?).
Why method FindControl() returns null on FormView until call DataBind(). After that it returns everything correctly? What workaround are there? Call DataBind() before first call of FindControl() ?
It seemed to be the right place to post to.My problem is that when I try to read registry key, I get null value, even if it exists (regedit shows it exists).Application is windows service with Log On As Local System and registry key im trying to read is in HKEY_LOCAL_MACHINESOFTWAREClassesCLSIDOn my development machine (x64 win7) it works fine. But in live server (x64 windows server 2008 r2) I get NULL.ese operating systems should have similar policies or does Local System on server 2008 have any restrictions i should know about?
When I browse to www.mysite.com/mycontroller/myaction/myid, everything works ok. But visiting www.mysite.com/mycontroller/myaction produces:Server Error in '/' Application.Object reference not set to an instance of an object.Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. Exception Details: System.NullReferenceException: Object reference not set to an instance of an object.