Recently I faced few interview questions.The interviewer asked the to give the detailed answer.1)Can we override a WCF service (Its is not OOPS overriding) ?.Explain the reason on either end. (WCF Related).2)Can we override Page events (Page_Load())?.Explain reason.(ASP.NET related).3)What is the primary responsibility of Pre_Init( page) event ,apart from user preference setting,skinning?4) Can we override Static methods.Explain the reason.(C# related)
I need little clarification regarding the Application Domain. As it has been said in the .net framework documentation "a process can have one or more application domain", Does it means There can be only one process in a machine dedicated for the .net application and whenever a new .net application gets executed, an application domain gets created in the above mentioned process?
I'm building CAB for ActiveX contol and I need the following clarification:I've control.ocx which have 2.0.0.1 version. When I'm embedding my control I'm putting the following tag:Tommorow, I'm adding new functionality to my ocx and versing it as 3.0.0.1How my tag should look like? Should it content codebase="control.cab#Version=3,0,0,1" attribute? Is it correct?Can I set version for cab file?How can I tell my client to update my ActiveX component?
if i set, CommandArgument="<%#((GridViewRow)Container).RowIndex %>" to linkbutton(inside gridview's template field) will it return (i) GridViewRow of current Row or (ii)DataKey valueof current row?
I was under the impression till now that Global.asax is used for application level events and it's a common file for all users. Then what does Session_Start event does in this file. If we have to create user session varaibles then Is this the write place to create those? If someone can kindly clear my confusion on this file and it's methods.
I've been looking on the Internet for a fairly clear explanation of the different methods of registering javascript in an asp.net application. I think I have a basic understating of the difference between registerStartupScript and registerClientScriptBlock (the main difference being where in the form the script is inserted).I'm not sure I understand what the RegisterClientScriptInclude method does or when it is used. From what I can gather, it is used to register an external .js file. Does this then make any and all javascript functions in that file available to the aspx page it was registered on? For example, if it was registered in the onLoad event of a master page, would all pages using that master page be able to use the javascript functions in the .js file? What problems would arise when trying to use document.getElementById in this case, if any? Also, when it is necessary/advantageous to use multiple .js files and register them separately?
It took me a while to realize the following, which was generated by VS after dragging and dropping the script file to a view file, does not work
[Code]....
However, the former works perfectly for another view file. I am wondering if any expert could shed some light on this.My current hunch is the correct path without using helper Url.Content() depends on a page's URl not where the view file is located.
I have a class named PageBase inheriting from ASP.NET Page. I want to do something in PageBase's Page_Load.All pages in my application have their logic done on their Page_Load. I'm thinking of a way that Page_Load of both of PageBase and other pages run without having to override Page_Load in pages. Is it possbile?
I have a GridView which uses the Alternatingrowstyle property, but I also would like to higlight each row when the user Edit the row, but using this code, it only highlights the rows that don't have the Alternatingrowstyle.
I've generated an entity framework class to handle my users from a custom db table. Now I'd like to override the password property of the EF object to Encrypt the value when it is set. From what i understand of MVC this should be done in the model where the EF object lives. I am able to do this easily in the controller but that doesn't seem like the most appropriate place as it will lead to duplicate code anywhere that needs to edit this user class. Is extending the partial class generated from EF possible for generated DB column properties?
I have a GridView control hooked up to a datasource that I allow row editing on. I use the standard edit/save/delete buttons that point to the Update, Cancel, and edit GridView commands.
I would like to add an additional button, "Next" inline with the save/cancel button. This would function the same as the save button, but would also add an additional row to the grid, and place that row into edit mode. To do this, I've added code to the Updated event of the GridView, which adds a new record to the db, rebinds the grid, and sets the editindex. This seems work, but the grid does not actually return in edit mode. I stripped out the new record code and simply left the statement to set the editindex, but the grid still will not stay in edit mode.
Is it possible to force the grid to stay in edit mode in this scenario? It appears that unless you set the cancel property of the GridViewUpdatedEventArgs, the Grid is going to flip to view mode. I don't want to set the cancel property in this case, because I want the GridView to trigger my datasource object to save the record.
If this doesn't work, it appears that I will need to allow the update to occur normally, return to the client, and then send another server request to add the record. I'd prefer not to do it this way, I would like to perform the necessary operations in context of one roundtrip.
Here's what the code (simplified) looks like:
protected void Button1_Click(object sender, EventArgs e) { // Works Fine this.sampleDataSource.Insert(); this.sampleGridView.DataBind(); [code]...
I am trying to create a 404 error page and currently I have all of the following/tried all of the following to try and accomplish this. When the user types in :
http://name/something.aspx
It works just as its supposed to. But if the user types in:
http://name/NotAFile
with no .aspx then IIS7 takes matters into its own hands and I get the lovely error page that IIS7 comes with. The goal is that the site redirects with only a 404 status code (so not a 200, or a 302 redirect). I have tried in both the web config with:
I've created a custom exception that inherits from Exception. I initially tried using the HandleError attribute with it, but too many things to list went wrong with that. I read about overriding OnException in a base Controller class, and decided to give that a try. This is the code:
[Code]....
This works, but I have a few questions. First, does an error page have to derrive from 'System.Web.Mvc.HandleErrorInfo'? I added a few new properties to my exception, and thought I'd be able to send it as a model to the error View where I could display those properties as usual when populating a View, but when I changed the type that the error View derrives from I get the yellow screen of death.
Also, I read that the above code would cause MVC to look first in the Views folder that correspondss to the controller that threw the exception. This was not the case. I placed the Error.aspx file in that Views folder and was treated to the YSOD again. I simply cut and pasted the file into the base shared folder and it worked. I am using Areas, and wonder if that could be a bug.
The last question I have is about the exception object as it's thrown. After throwing an exception, in the OnException method I thought I'd be able to see and manipulate the exception, but if that is possible I don't know how. What I would really like to do is to treat the exception object like any other object. I want to intercept its handling in the OnException method and send it to a View.
I would like to provide my client with a aspx pages, with code behind provided, etc. But in some cases they will want to write their own markup - I'm thinking of having 2 directories [siblings of each other], one for the pages I provide, and the other for their custom markup. At page serve time, check to see if the client wrote their own markup and if so use it. Otherwise use the default provided.
In a nutshell I would like for my clients to be able to modify the pages I provide, but if they blow it up have a very easy way to back it out. Or to put it in a more positive light, allow them to override my pages easily.
As the server of my website is located in a different timezone, is there a easy way to override the server local time by a setting in either web.config or global.asa?I could of course just use .AddHours() in all my .now() statements, but as this problem occured recently when I moved the site and that the .Now() syntax is used a number of times in the application I was looking for a another solution than changing my code everywhere I've used this syntax.
I'm new to MVC and I have a question and I need your inputs.I have this portion of code inside a method (let me just call this MyMethod):
[Code]....
where I am simply using the default CreateUser method from default Membership class to create a new user. This method simply adds the user on the default membership table. Now I have another table which I call userDetails table and I am hoping to add additional information related to the user recently added on the membership table.I can simply add more codes inside MyMethod to do the above logic of adding the additional information to another table. However I was thinking that if I do this... and I delete the user using the ASP.Net Web Application Administration Tool, I may end up with orphan entry on my userDetails table after the user is deleted from the membership table (since the administration tool wouldn't know MyMethod and use the default method from Membership class).So is there a way I can override the CreateUser method from the System.Web.Security.Membership class such that it goes through this flow?
1. invoke the original or base CreateUser method (the user is now created during this step)
2. determine user_id of the newly-added user on membership table.
3. add more user-related information on another table example: userDetails table.
This way, every time I call the CreateUser method it automatically adds the necessary entries on the membership and userDetails tables.If I create my own membership class inheriting from the original class, it would mean a lot work rewriting lots of methods when in reality what I'm trying to achieve is only adding additional information related to the user. I tried modifying the default membership table from the provider database but I get and error during the user-creation process. This gives me the impression that I am not allowed to modify the existing tables... which would lead me to creating a custom provider.
Is there built in methods into .net framework to do the following:
Get role GUID from user name/user GUID Get role name from role GUID
So far I have been sending queries to the asp_roles and asp_users tables to obtain that information and I'm wondering if there is a nicer way of doing this?
I have the following methods that I store in the ASPUtilities class:
getRoleGUID(guid userGuid) { LINQ joins }
getRoleGuid(string userName) { LINQ joins }
getRoleName(guid roleGuid) { LINQ joins }
EDIT:
I have just looked into extending SQLMembershipProvider examples.
Few examples completely override the SQLMembershipProvider, but I think what I'm interested is just adding few extra methods to deal with the roles by using LINQ. Is this feasible?
My understanding of Factory Method Pattern is (Correct me if i am wrong) Factory Method Pattern "Factory Method allow the client to delegates the product creation (Instance Creation) to the subclass". There are two situation in which we can go for creating Factory Method pattern.
(i) When the client is restricted to the product (Instance) creation.
(ii) There are multiple products available.But a decision to be made which product instance need to be returned. If you want to create Abstract Method pattern
You need to have abstract product Concrete Product Factory Method to return the appropriate product.
public enum ORMChoice { L2SQL, EFM, LS, Sonic } //Abstract Product public interface IProduct { void ProductTaken(); } //Concrete Product public class LinqtoSql : IProduct { public void ProductTaken() { Console.WriteLine("OR Mapping Taken:LinqtoSql"); } } //concrete product public class Subsonic : IProduct { public void ProductTaken() { Console.WriteLine("OR Mapping Taken:Subsonic"); } } //concrete product public class EntityFramework : IProduct { public void ProductTaken() { Console.WriteLine("OR Mapping Taken:EntityFramework"); } } //concrete product public class LightSpeed : IProduct { public void ProductTaken() { Console.WriteLine("OR Mapping Taken :LightSpeed"); } } public class Creator { //Factory Method public IProduct ReturnORTool(ORMChoice choice) { switch (choice) { case ORMChoice.EFM:return new EntityFramework(); break; case ORMChoice.L2SQL:return new LinqtoSql(); break; case ORMChoice.LS:return new LightSpeed(); break; case ORMChoice.Sonic:return new Subsonic(); break; default: return null; } } } **Client** Button_Click() { Creator c = new Creator(); IProduct p = c.ReturnORTool(ORMChoice.L2SQL); p.ProductTaken(); }
The model has a required attribute for the first name property:but I would like to make this happen automatically if the property has the CustomRequiredAttribute. Is there a way to override the Html.TextBoxFor() and check for the attribute on the given property? Or is there another way to accomplish this behaviour?
Just I started learning MVC pattern, of course i am learning it from Microsoft's website.Just i want to gather quiz information from the experts. My understanding is (correct me then and there)
1 ) MVC does not support server side events, but supports client side events. If it supports client side events, I need html page with jQuery/Javascript (view), but most of the example I absorbed is to display the information(model) in view, I did not see any client side event handling happens in view.
2) Except ViewState and controlState, MVC supports Sessions, Application State management, Cache management.
3) When request goes to MVC engine, the routing module routes the request that is picked up by the controller. The controller in executes the appropriate action and returns the appropriate view.
I have some (probably very basic) questions about developing custom controls. I am wanting to derive a set of button controls, and the first one I have started on is a "DeleteButton", that has a additional property (DeleteConfirmationText) that is built into the OnClientClick attribute. To get that added, I overrode the Render method as follows:
[Code]....
This all works well. Now, I will add some logic to make sure that there is some text in the DeleteConfirmationText property, but that isn't the intent of my question. What I am also wanting to do is to override some of the default property values, so I added that to the default constructor:
[Code]....
Now, in the designer in VS2008, and I look at the properties for the control, there isn't a default value shown in the "Properties" section, and the Causesvalidation still shows the underlying classes default value of "True". As well, in design mode, where the GridView control that containse my DeleteButton control would be displayed, there is an error box "There was an error rendering the control. 'Are you certain you want to delete this attorney?' cound not be set on property 'DeleteConfirmationText'. Here's the markup where I am defining the deletebutton control: