Search Results

Search found 52795 results on 2112 pages for 'pcap net'.

Page 949/2112 | < Previous Page | 945 946 947 948 949 950 951 952 953 954 955 956  | Next Page >

  • DEVX Web chart control

    - by Minal
    i am using DEVX Webchart control.. Bind x-Axis values: <dxchartsui:WebChartControl ID="ChartOPCGraph" runat="server" Height="400px" Width="700px" ClientInstanceName="ChartOPCGraph" DiagramTypeName="XYDiagram"> <Diagram> <axisy> <gridlines visible="False"></gridlines> </axisy> </Diagram> <Titles> <cc1:ChartTitle Dock="Bottom" Font="Tahoma, 8pt" Text="Days" TextColor="Gray" Alignment="Center"> </cc1:ChartTitle> <cc1:ChartTitle Dock="Left" Font="Tahoma, 8pt" Text="% Payment made" TextColor="Gray" Alignment="Center"></cc1:ChartTitle> </Titles> </dxchartsui:WebChartControl> values are being populated from database. On x-axis only two number comes from database so i need to bind only these two values and rest of them must not be visible. For example i get 9 number from database and it binds 8.6,8.7,8.8,8.9,9,9.2,...... Need a quick reply..

    Read the article

  • UpdatePanel doesn't load correctly on second try

    - by Ed Woodcock
    Ok, I've got two UpdatePanels on a (relatively simple) CRUD-management page, and I'm having some issues with them. The first updatepanel fails the second time it's updated (infinite loading popout, page doesn't change, request comes back properly but apparently isn't used). The second updatepanel fails if the first updatepanel has updated first, or if a certain internal trigger is pressed twice. Interestingly, the first updatepanel can be called multiple times with no problems if the first has yet to be called. layout example: <updatepanel> <table> <trigger> </table> </updatepanel> <lightbox> <updatepanel> <multiple triggers> </updatepanel> </lightbox> The use of the second updatepanel is required for the lightbox to function correctly (so it can't just be one big one). The first updatepanel exhibits this behaviour regardless of whether the second is present on the page or not. Has anyone ever experienced similar problems/have any ideas?

    Read the article

  • Gridview header issue: call event on header

    - by Joris
    Now I got this gridview, And I need the headers to be clickable, whereafter an event starts (something like OnClickHeader="header_ClickEvent"?) Ofcourse there is a SortExpression element, which enables to sort the grid, but I want to be able to start any event, like when clicking a button. I could not find any solution within the asp:BoundField nor asp:TemplateField... I thought a hyperlink could solve the problem, but that was a bit premature. Also, when using a TemplateField, I find it very hard to fill the column with data. Could anyone bring me the solution? The Gridview: <asp:GridView CssClass="gridview" ID="GridView1" runat="server" AllowPaging="True" AllowSorting="True" AutoGenerateColumns="False" DataKeyNames="Student_key" OnSelectedIndexChanged="GridView1_SelectedIndexChanged" PagerSettings-Visible="false" PageSize="14"> <HeaderStyle CssClass="headerstyle" /> <RowStyle CssClass="rowstyle"/> <AlternatingRowStyle CssClass="altrowstyle" /> <Columns> <asp:BoundField DataField="Studentnumber" HeaderText="Studentnummer" > <HeaderStyle CssClass="header100" /> </asp:BoundField> <asp:BoundField DataField="Prefix" HeaderText="Voorletters" > <HeaderStyle CssClass="header75" /> </asp:BoundField> <asp:BoundField DataField="prename" HeaderText="Voornaam" SortExpression="Voornaam"> <HeaderStyle CssClass="header75" /> </asp:BoundField> <asp:BoundField DataField="nickname" HeaderText="Roepnaam" > <HeaderStyle CssClass="header100" /> </asp:BoundField> <asp:BoundField DataField="insertion" HeaderText="Tussenvoegsel" > <HeaderStyle CssClass="header100" /> </asp:BoundField> <asp:BoundField DataField="surname" HeaderText="Achternaam"> <HeaderStyle CssClass="header100" /> </asp:BoundField> <asp:CommandField SelectText="show results" ShowSelectButton="True" > <HeaderStyle CssClass="header100" /> </asp:CommandField> </Columns> <EmptyDataTemplate >There are no results shown, please try again.</EmptyDataTemplate> </asp:GridView>

    Read the article

  • Cast to Extended Class in C# (dotnet 3.5<)

    - by csharpnoob
    Hi, i'm not sure if it's possible. I have a class car and a class mycar extended from class car. Class mycar has also a string list. Only difference. How can i cast now any car object to a mycar object without assigning all attributes each by hand. Like: Car car = new Car(); MyCar mcar = (MyCar) car; or MyCar mcar = new MyCar(car); or however i can extend car with own variables and don't have to do always Car car = new Car(); MyCar mcar = new MyCar(); mcar.name = car.name; mcar.xyz = car.xyz; ... Thanks.

    Read the article

  • How to use @FileUpload.GetHtml inside Html.BeginForm and sumbit FilesList

    - by Diode
    There is a default submit button for the @FileUpload.GetHtml. But I am expecting to have a submit button inside the Html begin form and use that substitution to submit the list of files with some more parameters. But when I do that the passing IEnumerable is always null in the Action method. This is my Action method: [HttpPost] public ActionResult Change(IEnumerable filesList, Guid ID, string Btn) {.... @using (Html.BeginForm("Change", "Home",FormMethod.Post)) { <textarea id="textArea" name="epost2" class="frm_txtfield_big" style="float:left; width:638px; height:200px;"></textarea> <input type="hidden" name="supportID" value="@Model.ID" /> @FileUpload.GetHtml(name: "ChooseFile",initialNumberOfFiles: 1,allowMoreFilesToBeAdded: true,includeFormTag: false) .......} But this is not passing the list of files to the method. Am doing it wrong or what is the wrong with the code.

    Read the article

  • How to copy a System.Drawing.Graphics over another Graphics?

    - by Simon T.
    We got some code that implement printing using Printdocument and it does all the drawing directly on the Graphics object received in the PrintEventArgs. It would be more convenient if the code doing the drawing used another canvas and we would add this canvas to the PrintEventArgs Graphics after. Since the code already depends on the Graphics object I need a canvas with this object. I also need a way to copy the canvas onto the PrintEventArgs Graphics. I can create a Graphicsfrom an Image but as far as I know it needs to be stored on the disk. Any suggestions?

    Read the article

  • JavaScript call to page method: error 500. JSON

    - by Ryan Ternier
    I'm using the auto complete control here:http://www.ramirezcobos.com/labs/autocomplete-for-jquery-js/comment-page-2/ And i've modified it as: var json_options; json_options = { script:'ReportSearch.aspx/GetUserList?json=true&limit=6&', varname:'input', json:true, shownoresults:true, maxresults:16, callback: function (obj) { $('#json_info').html('you have selected: '+obj.id + ' ' + obj.value + ' (' + obj.info + ')'); } }; $('#ctl00_contentModule_txtJQuerySearch').autoComplete(json_options); I have the following method in C# Code behind (aspx.cs) [System.Web.Services.WebMethod] [System.Web.Script.Services.ScriptMethod] public static string[] GetUserList(string input) { List<string> lUsers = new List<string>(); Server.DAL.SQLServer2005.User user = new Server.DAL.SQLServer2005.User(); Server.Info.AuthUser aUser = (Server.Info.AuthUser)HttpContext.Current.Session["AuthUser"]; List<Server.Info.User.UserDetails> users = user.GetUserList(aUser, input, 16, true); users.ForEach(delegate(ReportBeam.Server.Info.User.UserDetails u) { lUsers.Add("(" + u.UserName + ")" + u.LastName + ", " + u.FirstName); }); return lUsers.ToArray(); } The error I get back is: Server Error in '/WebPortal4' Application. Unknown web method GetUserList. Parameter name: methodName If I change any of the paraemeter names I get an error telling me the paremeter names are not in match. now that everything is as it should, it's bombing. Any help would rock.

    Read the article

  • OnSelectedIndexChange only fires on second click when using custom page validation script

    - by Kris P
    Okay.. this is hard to explain, so here it goes. I have an update panel which contains a number of controls. The update panel is triggered by the OnSelectedIndexChanged event of a dropdownlist called: ddlUSCitizenshipStatus. It works as expected when I selected a new item. However, if I leave ddlUSCitizenshipStatus with the default value, and then click "submit" button on the page, the requiredfieldvalidators say there is an error on ddlUSCitizenshipStatus (which it should, as I never selected a value). So I then choose a value, the error message goes away on ddlUSCitizenshipStatus, however the updatepanel does not refresh. I've debugged this locally and the OnSelectedIndexChanged event for ddlUSCitizenshipStatus does not fire. If I choose an item in the ddlUSCitizenshipStatus list a second time, the OnSelectedIndexChanged server event fires and the update panel refreshes and works as expected. The issue is, I have to select an item in ddlUSCitizenshipStatus twice, after failed validation, before the updatepanel it's sitting in updates. The submit button on the page looks like this: <asp:LinkButton ID="btnSubmitPage1" runat="server" CssClass="continueButton" OnClick="btnSubmitPage1_Click" CausesValidation="true" OnClientClick="javascript: return ValidatePage();" /> If I remove my custom OnClientClick script, making the submit button look like this: <asp:LinkButton ID="btnSubmitPage1" runat="server" CssClass="continueButton" OnClick="btnSubmitPage1_Click" CausesValidation="true" ValidationGroup="valGrpAdditionalInformation" /> The dropdownlist, update panel, and reguiredfieldvalidator all work as expected. However, I need to run that custom "ValidatePage()" script when the button is clicked. Below is what my ValidatePage script looks like. I've been troubleshooting this for more hours than I can count.... I hope someone is able to help me. Please let me know if you can figure out why ddlUSCitizenshipStatus doesn't update the updatepanel until the second click after a failed validation. function ValidatePage() { var blnDoPostBack = true; if (typeof(Page_ClientValidate) == 'function' ) { //Client side validation can occur, so lets do it. //Validate each validation group. for( var i = 0; i < Page_ValidationSummaries.length; i++ ) Page_ClientValidate( Page_ValidationSummaries[i].validationGroup.toString() ); //Validate every validation control on the page. for (var i = 0; i < Page_Validators.length; i++) ValidatorValidate(Page_Validators[i]); //Figure out which validation groups have errors, store a list of these validation groups in an array. var aryValGrpsWithErrors = []; for( var i = 0; i < Page_Validators.length; i++ ) { if( !Page_Validators[i].isvalid ) { //This particular validator has thrown an error. //Remeber to not do a postback, as we were able to catch this validation error client side. blnDoPostBack = false; //If we haven't already registered the validation group this erroring validation control is a part of, do so now. if( aryValGrpsWithErrors.indexOf( Page_Validators[i].validationGroup.toString() ) == -1 ) aryValGrpsWithErrors[aryValGrpsWithErrors.length++] = Page_Validators[i].validationGroup.toString(); } } //Now display every validation summary that has !isvalid validation controls in it. for( var i = 0; i < Page_ValidationSummaries.length; i++ ) { if( aryValGrpsWithErrors.indexOf( Page_ValidationSummaries[i].validationGroup.toString() ) != -1 ) { Page_ValidationSummaries[i].style.display = ""; document.getElementById( Page_ValidationSummaries[i].id.toString() + "Wrapper" ).style.display = ""; } else { //The current validation summary does not have any error messages in it, so make sure it's hidden. Page_ValidationSummaries[i].style.display = "none"; document.getElementById( Page_ValidationSummaries[i].id.toString() + "Wrapper" ).style.display = "none"; } } } return blnDoPostBack; }

    Read the article

  • IIS7 URL Rewrite with dynamic subdomains.

    - by arri.me
    My goal is to implement the following scheme using the subdomain and path as attributes: Use a wildcard DNS entry that routes any subdomain to the root site: Example: *.example.com ex: http://xyz.example.com to http://example.com Next I want to rewrite the requests to point to a specific page, passing both the subdomain and the request path as attributes. Example: http://xyz123.example.com/images/header.jpg to http://example.com/get.aspx?id=xyz123&path=/images/header.jpg I've seen several questions on here regarding similar goals, but not quite the same. I'm new to using rewrite rules, so any help is appreciated. I will update this as I make progress.

    Read the article

  • Membership.GetUser() within TransactionScope throws TransactionAbortedException

    - by Bob Kaufman
    The following code throws a TransactionAbortedException with message "The transaction has aborted": using ( MyDataContext context = new MyDataContext() ) { using ( TransactionScope transactionScope = new TransactionScope() ) { Guid accountID = new Guid( Request.QueryString[ "aid" ] ); Account account = ( from a in context.Accounts where a.UniqueID.Equals( accountID ) select a ).SingleOrDefault(); IQueryable < My_Data_Access_Layer.Login > loginList = from l in context.Logins where l.AccountID == account.AccountID select l; foreach ( My_Data_Access_Layer.Login login in loginList ) { MembershipUser membershipUser = Membership.GetUser( login.UniqueID ); } } } The error occurs at the call to Membership.GetUser(). My Connection String is: <add name="MyConnectionString" connectionString="Data Source=localhost\SQLEXPRESS;Initial Catalog=MyDatabase;Integrated Security=True" providerName="System.Data.SqlClient" /> Everything I've read tells me that TransactionScope should just get magically applied to the Membership calls. The user exists (I'd expect a null return otherwise.)

    Read the article

  • GDI handles in a DotNET application

    - by David Rutten
    My pure DotNET library runs as a plugin inside an unmanaged desktop application. I've been getting a steady (though low) stream of crash reports that seem to indicate a problem with GDI handles (fonts in error messages etc. revert to the system font, display of all sorts of controls break down, massive crash shortly after). My Forms have few controls, but I do a lot of GDI+ drawing in User controls. What's a good way to tell how many handles I'm using, or even leaking? Thanks, David

    Read the article

  • Find, Find Next?

    - by Tanner
    Hello everyone, I am trying to make a find, find next function for my program, which I did manage to do with this code: int findPos = 0; private void button1_Click(object sender, EventArgs e) { try { string s = textBox1.Text; richTextBox1.Focus(); findPos = richTextBox1.Find(s, findPos, RichTextBoxFinds.None); richTextBox1.Select(findPos, s.Length); findPos += textBox1.Text.Length; //i = richTextBox1.Find(s, i + s.Length, RichTextBoxFinds.None); } catch { MessageBox.Show("No Occurences Found"); findPos = 0; } } And it works great in form1 but if I use this code and try to call it from form2 It doesn't do anything: //Form1 public void FindNext() { try { this.Focus(); Form2 frm2 = new Form2(); string s = frm2.textBox1.Text; richTextBox1.Focus(); findPos = richTextBox1.Find(s, findPos, RichTextBoxFinds.None); richTextBox1.Select(findPos + 1, s.Length); findPos += textBox1.Text.Length; } catch { MessageBox.Show("No Occurences Found"); findPos = 0; } } //Form2 private void button1_Click(object sender, EventArgs e) { Form1 frm1 = new Form1(); frm1.FindNext(); } Does any one know why this is? Thanks,Tanner.

    Read the article

  • Best Practise for Writing a POS System

    - by Gary
    Hi, I'm putting together a basic POS system in C# that needs to print to a receipt printer and open a cash drawer. Do I have to use the Microsoft Point of Service SDK? I've been playing around with printing to my Samsung printer using the Windows driver that came with it, and it seems to work great. I assume though that other printers may not come with Windows drivers and then I would be stuck? Or would I be able to simply use the Generic/Text Driver to print to any printer that supports it? For the cash drawer I would need to send codes directly to the COM port which is fine with me, if it saves me the hassle of helping clients setup OPOS drivers on there systems. Am I going down the wrong path here? Thanks, Gary

    Read the article

  • JavaScriptSerializer with custom Type

    - by balint
    Hi, I have a function with a List return type. I'm using this in a JSON-enabled WebService like: [WebMethod(EnableSession = true)] [ScriptMethod(ResponseFormat = ResponseFormat.Json)] public List<Product> GetProducts(string dummy) /* without a parameter, it will not go through */ { return new x.GetProducts(); } this returns: {"d":[{"__type":"Product","Id":"2316","Name":"Big Something ","Price":"3000","Quantity":"5"}]} I need to use this code in a simple aspx file too, so I created a JavaScriptSerializer: JavaScriptSerializer js = new JavaScriptSerializer(); StringBuilder sb = new StringBuilder(); List<Product> products = base.GetProducts(); js.RegisterConverters(new JavaScriptConverter[] { new ProductConverter() }); js.Serialize(products, sb); string _jsonShopbasket = sb.ToString(); but it returns without a type: [{"Id":"2316","Name":"Big One ","Price":"3000","Quantity":"5"}] Does anyone have any clue how to get the second Serialization work like the first? Thanks!

    Read the article

  • Exception using SQLiteDataReader

    - by galford13x
    I'm making a Custom SQLite Wrapper. This is meant to allow a presistent connection to a database. However, I receive an exception when calling this function twice. public Boolean DatabaseConnected(string databasePath) { bool exists = false; if (ConnectionOpen()) { this.Command.CommandText = string.Format(DATABASE_QUERY); using (reader = this.Command.ExecuteReader()) { while (reader.Read()) { if (string.Compare(reader[FILE_NAME_COL_HEADER].ToString(), databasePath, true) == 0) { exists = true; break; } } reader.Close(); } } return exists; } I use the above function to check if the database is currently open before executing a command or trying to open a database. The first time I execute the function, it executes with no issue. After that the reader = this.Command.ExecuteReader() throws an exception Object reference not set to an instance of an object. StackTrace: at System.Data.SQLite.SQLiteStatement.Dispose() at System.Data.SQLite.SQLite3.Reset(SQLiteStatement stmt) at System.Data.SQLite.SQLite3.Step(SQLiteStatement stmt) at System.Data.SQLite.SQLiteDataReader.NextResult() at System.Data.SQLite.SQLiteDataReader..ctor(SQLiteCommand cmd, CommandBehavior behave) at System.Data.SQLite.SQLiteCommand.ExecuteReader(CommandBehavior behavior) at System.Data.SQLite.SQLiteCommand.ExecuteReader() at EveTraderApi.Database.SQLDatabase.DatabaseConnected(String databasePath) in C:\Documents and Settings\galford13x\My Documents\Visual Studio 2008\Projects\EveTrader\EveTraderApi\Database\Database.cs:line 579 at EveTraderApi.Database.SQLDatabase.OpenSQLiteDB(String filename) in C:\Documents and Settings\galford13x\My Documents\Visual Studio 2008\Projects\EveTrader\EveTraderApi\Database\Database.cs:line 119 at EveTraderApiExample.Form1.CreateTableDataTypes() in C:\Documents and Settings\galford13x\My Documents\Visual Studio 2008\Projects\EveTrader\EveTraderApiExample\Form1.cs:line 89 at EveTraderApiExample.Form1.Button1_ExecuteCommand(Object sender, EventArgs e) in C:\Documents and Settings\galford13x\My Documents\Visual Studio 2008\Projects\EveTrader\EveTraderApiExample\Form1.cs:line 35 at System.Windows.Forms.Control.OnClick(EventArgs e) at System.Windows.Forms.Button.OnClick(EventArgs e) at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent) at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks) at System.Windows.Forms.Control.WndProc(Message& m) at System.Windows.Forms.ButtonBase.WndProc(Message& m) at System.Windows.Forms.Button.WndProc(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam) at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg) at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData) at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context) at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context) at System.Windows.Forms.Application.Run(Form mainForm) at EveTraderApiExample.Program.Main() in C:\Documents and Settings\galford13x\My Documents\Visual Studio 2008\Projects\EveTrader\EveTraderApiExample\Program.cs:line 18 at System.AppDomain._nExecuteAssembly(Assembly assembly, String[] args) at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args) at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly() at System.Threading.ThreadHelper.ThreadStart_Context(Object state) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) at System.Threading.ThreadHelper.ThreadStart()

    Read the article

  • Nested DataPagers problem

    - by diamandiev
    Sample code <asp:Repeater> <ItemTemplate> <asp:ListView DataSource=<%# Container.DataItem.Items %> ... /> <asp:DataPager .... /> </ItemTemplate> </asp:Repeater> This does not work. The repeater data source is not a datasource control It is set like so repeater.DataSource = datasource repeater.DataBind()

    Read the article

  • DataGridView display row header cell

    - by Karl
    I'm trying to display a simple DataGridView linked to a DataTable and I want, ultimately, my first column in the DataTable to be the row header cell for the DataGridView. At this point I will settle for having any value in the row header cell. I can display the DataGridView with all my rows and columns, and with column header cells, but no row header cell. I check the value in the row.HeaderCell.Value, and the data I put there is there. I check row.HeaderCell.Displayed and it is false, but this is read only, so I can't make it true. How do I make the row header cell display? Here's a simple sample of what I've tried to get this to work: DataTable table = new DataTable(); for (int i = 0; i<10; i++) { table.Columns.Add(new DataColumn("column-" + i)); } for (int i = 0; i < 10; i++) { DataRow theRow = table.NewRow(); for (int j = 0; j < 10; j++) theRow[j] = i + "-" + j; table.Rows.Add(theRow); } dataGridView1.DataSource = table; dataGridView1.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.AutoSizeToDisplayedHeaders; int rowNumber = 1; foreach (DataGridViewRow row in dataGridView1.Rows) { if (row.IsNewRow) continue; row.HeaderCell.Value = "Row " + rowNumber; rowNumber = rowNumber + 1; } dataGridView1.AutoResizeRowHeadersWidth( DataGridViewRowHeadersWidthSizeMode.AutoSizeToAllHeaders);

    Read the article

  • Refactoring method with many conditional return statements

    - by MC.
    Hi, I have a method for validation that has many conditional statements. Basically it goes If Check1 = false return false If Check2 = false return false etc FxCop complains that the cyclomatic complexity is too high. I know that it is not best practice to have return statements in the middle of functions, but at the same time the only alternative I see is an ugly list of If-else statements. What is the best way to approach this? Thanks in advance.

    Read the article

  • Lucene search and underscores

    - by Matt
    When I use Luke to search my Lucene index using a standard analyzer, I can see the field I am searchng for contains values of the form MY_VALUE. When I search for field:"MY_VALUE" however, the query is parsed as field:"my value" Is there a simple way to escape the underscore (_) character so that it will search for it?

    Read the article

  • Issue with Autofac 2 and MVC2 using HttpRequestScoped

    - by Page Brooks
    I'm running into an issue with Autofac2 and MVC2. The problem is that I am trying to resolve a series of dependencies where the root dependency is HttpRequestScoped. When I try to resolve my UnitOfWork (which is Disposable), Autofac fails because the internal disposer is trying to add the UnitOfWork object to an internal disposal list which is null. Maybe I'm registering my dependencies with the wrong lifetimes, but I've tried many different combinations with no luck. The only requirement I have is that MyDataContext lasts for the entire HttpRequest. I've posted a demo version of the code for download here. Autofac modules are set up in web.config Global.asax.cs protected void Application_Start() { string connectionString = "something"; var builder = new ContainerBuilder(); builder.Register(c => new MyDataContext(connectionString)).As<IDatabase>().HttpRequestScoped(); builder.RegisterType<UnitOfWork>().As<IUnitOfWork>().InstancePerDependency(); builder.RegisterType<MyService>().As<IMyService>().InstancePerDependency(); builder.RegisterControllers(Assembly.GetExecutingAssembly()); _containerProvider = new ContainerProvider(builder.Build()); IoCHelper.InitializeWith(new AutofacDependencyResolver(_containerProvider.RequestLifetime)); ControllerBuilder.Current.SetControllerFactory(new AutofacControllerFactory(ContainerProvider)); AreaRegistration.RegisterAllAreas(); RegisterRoutes(RouteTable.Routes); } AutofacDependencyResolver.cs public class AutofacDependencyResolver { private readonly ILifetimeScope _scope; public AutofacDependencyResolver(ILifetimeScope scope) { _scope = scope; } public T Resolve<T>() { return _scope.Resolve<T>(); } } IoCHelper.cs public static class IoCHelper { private static AutofacDependencyResolver _resolver; public static void InitializeWith(AutofacDependencyResolver resolver) { _resolver = resolver; } public static T Resolve<T>() { return _resolver.Resolve<T>(); } } UnitOfWork.cs public interface IUnitOfWork : IDisposable { void Commit(); } public class UnitOfWork : IUnitOfWork { private readonly IDatabase _database; public UnitOfWork(IDatabase database) { _database = database; } public static IUnitOfWork Begin() { return IoCHelper.Resolve<IUnitOfWork>(); } public void Commit() { System.Diagnostics.Debug.WriteLine("Commiting"); _database.SubmitChanges(); } public void Dispose() { System.Diagnostics.Debug.WriteLine("Disposing"); } } MyDataContext.cs public interface IDatabase { void SubmitChanges(); } public class MyDataContext : IDatabase { private readonly string _connectionString; public MyDataContext(string connectionString) { _connectionString = connectionString; } public void SubmitChanges() { System.Diagnostics.Debug.WriteLine("Submiting Changes"); } } MyService.cs public interface IMyService { void Add(); } public class MyService : IMyService { private readonly IDatabase _database; public MyService(IDatabase database) { _database = database; } public void Add() { // Use _database. } } HomeController.cs public class HomeController : Controller { private readonly IMyService _myService; public HomeController(IMyService myService) { _myService = myService; } public ActionResult Index() { // NullReferenceException is thrown when trying to // resolve UnitOfWork here. // Doesn't always happen on the first attempt. using(var unitOfWork = UnitOfWork.Begin()) { _myService.Add(); unitOfWork.Commit(); } return View(); } public ActionResult About() { return View(); } }

    Read the article

< Previous Page | 945 946 947 948 949 950 951 952 953 954 955 956  | Next Page >