Watch this example on YouTube
Replace
ALTER PROCEDURE spTestExit
AS
BEGIN
SET NOCOUNT ON;
Select * from TestTable
END
GO
exec spTestExit 'sss'
exec spTestExit null
With
ALTER PROCEDURE spTestExit
@Name varchar(50)
AS
BEGIN
SET NOCOUNT ON;
if @Name Is null
Begin
Return
End
Select * from TestTable
END
GO
exec spTestExit 'sss'
exec spTestExit null
Tuesday, 23 July 2019
Saturday, 20 July 2019
MSSQL - Fix Error - - Unable to modify table. Cannot insert the value NULL into column 'Address', table 'Company.dbo.Tmp_TestTable'; column does not allow nulls. INSERT fails. The statement has been terminated.
Watch this example on YouTube
'TestTable' table
- Unable to modify table.
Cannot insert the value NULL into column 'IsActive', table 'Company.dbo.Tmp_TestTable'; column does not allow nulls. INSERT fails.
The statement has been terminated.
to fix it do it manually
Update TestTable Set IsActive = 1 where IsActive is null
Alter Table TestTable
Alter Column IsActive bit Not Null
MSSQL - Fix Error - There are fewer columns in the INSERT statement than values specified in the VALUES clause. The number of values in the VALUES clause must match the number of columns specified in the INSERT statement.
Watch this example on YouTube
There are fewer columns in the INSERT statement than values specified in the VALUES clause. The number of values in the VALUES clause must match the number of columns specified in the INSERT statement.
To fix it replace
Insert Into TestTable (ID, Name) Values (1, 'aaa', 'bbb')
with
Insert Into TestTable (ID, Name) Values (1, 'aaa')
C# - Convert DateTime to Month Year - like December 2019
Watch this example on YouTube
string ConvertedDT = DateTime.Now.ToString("MMMM") + " " + DateTime.Now.Year.ToString();
string ConvertedDT = DateTime.Now.ToString("MMMM") + " " + DateTime.Now.Year.ToString();
C# - Fix Error - Literal of type double cannot be implicitly converted to type 'decimal'; use an 'M' suffix to create a literal of this type
Watch this example on YouTube
To Fix it replace
Decimal Rate = 1.0000;
with
Decimal Rate = 1.0000M;
To Fix it replace
Decimal Rate = 1.0000;
with
Decimal Rate = 1.0000M;
C# - Fix Error - Index and length must refer to a location within the string. - Check against string length
Watch this example on YouTube
Fix error
An exception of type 'System.ArgumentOutOfRangeException' occurred in mscorlib.dll but was not handled in user code
Additional information: Index and length must refer to a location within the string.
To fix it replace
string s1 = "ab";
string s2 = s1.Substring(0, 100);
with
string s1 = "ab";
string s2 = s1.Substring(0, s1.Length> 100 ? 100: s1.Length);
Fix error
An exception of type 'System.ArgumentOutOfRangeException' occurred in mscorlib.dll but was not handled in user code
Additional information: Index and length must refer to a location within the string.
To fix it replace
string s1 = "ab";
string s2 = s1.Substring(0, 100);
with
string s1 = "ab";
string s2 = s1.Substring(0, s1.Length> 100 ? 100: s1.Length);
Friday, 28 June 2019
MVC - WCF - Create and consume WCF Service with data from EF
Watch this example on YouTube
1. SQL
USE [Company]
GO
/****** Object: Table [dbo].[Product] Script Date: 2019-06-28 9:34:42 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Product](
[ProductID] [int] IDENTITY(1,1) NOT NULL,
[Name] [varchar](50) NULL
) ON [PRIMARY]
GO
SET IDENTITY_INSERT [dbo].[Product] ON
GO
INSERT [dbo].[Product] ([ProductID], [Name]) VALUES (1, N'Table')
GO
INSERT [dbo].[Product] ([ProductID], [Name]) VALUES (2, N'Something Else')
GO
INSERT [dbo].[Product] ([ProductID], [Name]) VALUES (3, N'Sofa')
GO
INSERT [dbo].[Product] ([ProductID], [Name]) VALUES (4, N'Chair')
GO
INSERT [dbo].[Product] ([ProductID], [Name]) VALUES (5, N'Laptop')
GO
INSERT [dbo].[Product] ([ProductID], [Name]) VALUES (6, N'Mouse')
GO
INSERT [dbo].[Product] ([ProductID], [Name]) VALUES (7, N'Keyboard')
GO
INSERT [dbo].[Product] ([ProductID], [Name]) VALUES (8, N'Monitor')
GO
SET IDENTITY_INSERT [dbo].[Product] OFF
GO
2. IService1.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.ServiceModel.Web;
using System.Text;
namespace WcfService2
{
// NOTE: You can use the "Rename" command on the "Refactor" menu to change the interface name "IService1" in both code and config file together.
[ServiceContract]
public interface IService1
{
[OperationContract]
string GetData(int value);
[OperationContract]
CompositeType GetDataUsingDataContract(CompositeType composite);
[OperationContract]
List<Product> GetAllProducts();
[OperationContract]
string GetSomething();
}
// Use a data contract as illustrated in the sample below to add composite types to service operations.
[DataContract]
public class CompositeType
{
bool boolValue = true;
string stringValue = "Hello ";
[DataMember]
public bool BoolValue
{
get { return boolValue; }
set { boolValue = value; }
}
[DataMember]
public string StringValue
{
get { return stringValue; }
set { stringValue = value; }
}
}
}
3. Service1.svc
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.ServiceModel.Web;
using System.Text;
namespace WcfService2
{
// NOTE: You can use the "Rename" command on the "Refactor" menu to change the class name "Service1" in code, svc and config file together.
// NOTE: In order to launch WCF Test Client for testing this service, please select Service1.svc or Service1.svc.cs at the Solution Explorer and start debugging.
public class Service1 : IService1
{
public string GetSomething()
{
return "something";
}
public List<Product> GetAllProducts()
{
List<Product> prodList = new List<Product>();
CompanyEntities db = new CompanyEntities();
var res = from p in db.Products select p;
foreach(var item in res)
{
Product pr = new Product();
pr.Name = item.Name;
pr.ProductID = item.ProductID;
prodList.Add(pr);
}
return prodList;
}
public string GetData(int value)
{
return string.Format("You entered: {0}", value);
}
public CompositeType GetDataUsingDataContract(CompositeType composite)
{
if (composite == null)
{
throw new ArgumentNullException("composite");
}
if (composite.BoolValue)
{
composite.StringValue += "Suffix";
}
return composite;
}
}
}
4. Consumer (home controller)
public ActionResult Index()
{
List<Product> lstProd = new List<Product>();
ServiceReference1.Service1Client s = new ServiceReference1.Service1Client();
var res2 = s.GetSomething();
var res = s.GetAllProducts();
foreach(var item in res)
{
Product pr = new Product();
pr.ProductID = item.ProductID;
pr.Name = item.Name;
lstProd.Add(pr);
}
return View(lstProd);
}
1. SQL
USE [Company]
GO
/****** Object: Table [dbo].[Product] Script Date: 2019-06-28 9:34:42 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Product](
[ProductID] [int] IDENTITY(1,1) NOT NULL,
[Name] [varchar](50) NULL
) ON [PRIMARY]
GO
SET IDENTITY_INSERT [dbo].[Product] ON
GO
INSERT [dbo].[Product] ([ProductID], [Name]) VALUES (1, N'Table')
GO
INSERT [dbo].[Product] ([ProductID], [Name]) VALUES (2, N'Something Else')
GO
INSERT [dbo].[Product] ([ProductID], [Name]) VALUES (3, N'Sofa')
GO
INSERT [dbo].[Product] ([ProductID], [Name]) VALUES (4, N'Chair')
GO
INSERT [dbo].[Product] ([ProductID], [Name]) VALUES (5, N'Laptop')
GO
INSERT [dbo].[Product] ([ProductID], [Name]) VALUES (6, N'Mouse')
GO
INSERT [dbo].[Product] ([ProductID], [Name]) VALUES (7, N'Keyboard')
GO
INSERT [dbo].[Product] ([ProductID], [Name]) VALUES (8, N'Monitor')
GO
SET IDENTITY_INSERT [dbo].[Product] OFF
GO
2. IService1.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.ServiceModel.Web;
using System.Text;
namespace WcfService2
{
// NOTE: You can use the "Rename" command on the "Refactor" menu to change the interface name "IService1" in both code and config file together.
[ServiceContract]
public interface IService1
{
[OperationContract]
string GetData(int value);
[OperationContract]
CompositeType GetDataUsingDataContract(CompositeType composite);
[OperationContract]
List<Product> GetAllProducts();
[OperationContract]
string GetSomething();
}
// Use a data contract as illustrated in the sample below to add composite types to service operations.
[DataContract]
public class CompositeType
{
bool boolValue = true;
string stringValue = "Hello ";
[DataMember]
public bool BoolValue
{
get { return boolValue; }
set { boolValue = value; }
}
[DataMember]
public string StringValue
{
get { return stringValue; }
set { stringValue = value; }
}
}
}
3. Service1.svc
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.ServiceModel.Web;
using System.Text;
namespace WcfService2
{
// NOTE: You can use the "Rename" command on the "Refactor" menu to change the class name "Service1" in code, svc and config file together.
// NOTE: In order to launch WCF Test Client for testing this service, please select Service1.svc or Service1.svc.cs at the Solution Explorer and start debugging.
public class Service1 : IService1
{
public string GetSomething()
{
return "something";
}
public List<Product> GetAllProducts()
{
List<Product> prodList = new List<Product>();
CompanyEntities db = new CompanyEntities();
var res = from p in db.Products select p;
foreach(var item in res)
{
Product pr = new Product();
pr.Name = item.Name;
pr.ProductID = item.ProductID;
prodList.Add(pr);
}
return prodList;
}
public string GetData(int value)
{
return string.Format("You entered: {0}", value);
}
public CompositeType GetDataUsingDataContract(CompositeType composite)
{
if (composite == null)
{
throw new ArgumentNullException("composite");
}
if (composite.BoolValue)
{
composite.StringValue += "Suffix";
}
return composite;
}
}
}
4. Consumer (home controller)
public ActionResult Index()
{
List<Product> lstProd = new List<Product>();
ServiceReference1.Service1Client s = new ServiceReference1.Service1Client();
var res2 = s.GetSomething();
var res = s.GetAllProducts();
foreach(var item in res)
{
Product pr = new Product();
pr.ProductID = item.ProductID;
pr.Name = item.Name;
lstProd.Add(pr);
}
return View(lstProd);
}
Thursday, 20 June 2019
MVC - Consume Web Service (Service Reference, WCF)
Watch this example on YouTube
1. Services:
http://www.dneonline.com/calculator.asmx
http://services.aonaware.com/DictService/DictService.asmx
2. Home Controller
MyServiceRefrence.CalculatorSoapClient ws = new MyServiceRefrence.CalculatorSoapClient();
var res = ws.Add(2, 4);
1. Services:
http://www.dneonline.com/calculator.asmx
http://services.aonaware.com/DictService/DictService.asmx
2. Home Controller
MyServiceRefrence.CalculatorSoapClient ws = new MyServiceRefrence.CalculatorSoapClient();
var res = ws.Add(2, 4);
Microsoft Internet Explorer - Fix Issue with XML not showing in proper format or not showing all data
Watch this example on YouTube
to fix it replace
<root>
<name>
<first>Bob</first>
<last>Doe</last>
</name>
<name>
<first>John</first>
<last>Lennon</last>
</name>
<name>
<first>Bob</first>
<last>Doe</last>
</name>
<name>
<first>John</first>
<last>Lennon</last>
</name>
</root>
with
<root>
<name>
<first>Bob</first>
<last>Doe</last>
</name>
<name>
<first>John</first>
<last>Lennon</last>
</name>
<name>
<first>Bob</first>
<last>Doe</last>
</name>
<name>
<first>John</first>
<last>Lennon</last>
</name>
</root>
to fix it replace
<root>
<name>
<first>Bob</first>
<last>Doe</last>
</name>
<name>
<first>John</first>
<last>Lennon</last>
</name>
<name>
<first>Bob</first>
<last>Doe</last>
</name>
<name>
<first>John</first>
<last>Lennon</last>
</name>
</root>
with
<root>
<name>
<first>Bob</first>
<last>Doe</last>
</name>
<name>
<first>John</first>
<last>Lennon</last>
</name>
<name>
<first>Bob</first>
<last>Doe</last>
</name>
<name>
<first>John</first>
<last>Lennon</last>
</name>
</root>
Wednesday, 19 June 2019
Opera - Fix error - Extra content at the end of the document Below is a rendering of the page up to the first error.
Watch this example on YouTube
This page contains the following errors:
error on line 5 at column 1: Extra content at the end of the document
Below is a rendering of the page up to the first error.
To fix it replace
<name>
<first>Bob</first>
<last>Doe</last>
</name>
<name>
<first>John</first>
<last>Lennon</last>
</name>
with
<root>
<name>
<first>Bob</first>
<last>Doe</last>
</name>
<name>
<first>John</first>
<last>Lennon</last>
</name>
</root>
C# - Fix Error - Guid.NewGuid()' is a method, which is not valid in the given context
Watch this example on YouTube
Guid.NewGuid()' is a method, which is not valid in the given context
also
The name 'guid' does not exist in the current context
To fix it replace
string test = guid.NewGuid.ToString();
wtih
string test = Guid.NewGuid().ToString();
Tuesday, 18 June 2019
Mozilla Firefox - Fix Error - XML Parsing Error junk after document element with comments
Watch this example on YouTube
to fix it replace
<name>
<first>Bob</first>
<last>Doe</last>
</name>
<name>
<first>John</first>
<last>Lennon</last>
</name>
with
<root>
<name>
<first>Bob</first>
<last>Doe</last>
</name>
<name>
<first>John</first>
<last>Lennon</last>
</name>
</root>
to fix it replace
<name>
<first>Bob</first>
<last>Doe</last>
</name>
<name>
<first>John</first>
<last>Lennon</last>
</name>
with
<root>
<name>
<first>Bob</first>
<last>Doe</last>
</name>
<name>
<first>John</first>
<last>Lennon</last>
</name>
</root>
Friday, 14 June 2019
MVC - Web Service - Create Web Service - Pass XML file (not string) as Parameter and Receive XML file (not string) in Web Service
Watch this example on YouTube
1. Web Service
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Xml;
namespace WebApplication15
{
/// <summary>
/// Summary description for WebService1
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
// To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line.
// [System.Web.Script.Services.ScriptService]
public class WebService1 : System.Web.Services.WebService
{
[WebMethod]
public string HelloWorld()
{
return "Hello World";
}
[WebMethod]
public string XMLTest(XmlDocument doc)
{
var xmlString = doc.InnerText;
return "success";
}
}
}
2. Consumer
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Xml;
namespace WebApplication16.Controllers
{
public class HomeController : Controller
{
public ActionResult Index()
{
XmlDocument doc = new XmlDocument();
XmlNode docNode = doc.CreateXmlDeclaration("1.0", "UTF-8", null);
doc.AppendChild(docNode);
XmlNode usersNode = doc.CreateElement("Users");
doc.AppendChild(usersNode);
XmlNode userNode = doc.CreateElement("User");
XmlAttribute userAttribute = doc.CreateAttribute("ID");
userAttribute.Value = "1";
userNode.Attributes.Append(userAttribute);
usersNode.AppendChild(userNode);
XmlNode nameNode = doc.CreateElement("Name");
nameNode.AppendChild(doc.CreateTextNode("Frank"));
userNode.AppendChild(nameNode);
XmlNode addressNode = doc.CreateElement("Address");
addressNode.AppendChild(doc.CreateTextNode("1 Main St."));
userNode.AppendChild(addressNode);
localhost.WebService1 testService = new localhost.WebService1();
var res = testService.XMLTest(doc);
return View();
}
1. Web Service
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Xml;
namespace WebApplication15
{
/// <summary>
/// Summary description for WebService1
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
// To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line.
// [System.Web.Script.Services.ScriptService]
public class WebService1 : System.Web.Services.WebService
{
[WebMethod]
public string HelloWorld()
{
return "Hello World";
}
[WebMethod]
public string XMLTest(XmlDocument doc)
{
var xmlString = doc.InnerText;
return "success";
}
}
}
2. Consumer
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Xml;
namespace WebApplication16.Controllers
{
public class HomeController : Controller
{
public ActionResult Index()
{
XmlDocument doc = new XmlDocument();
XmlNode docNode = doc.CreateXmlDeclaration("1.0", "UTF-8", null);
doc.AppendChild(docNode);
XmlNode usersNode = doc.CreateElement("Users");
doc.AppendChild(usersNode);
XmlNode userNode = doc.CreateElement("User");
XmlAttribute userAttribute = doc.CreateAttribute("ID");
userAttribute.Value = "1";
userNode.Attributes.Append(userAttribute);
usersNode.AppendChild(userNode);
XmlNode nameNode = doc.CreateElement("Name");
nameNode.AppendChild(doc.CreateTextNode("Frank"));
userNode.AppendChild(nameNode);
XmlNode addressNode = doc.CreateElement("Address");
addressNode.AppendChild(doc.CreateTextNode("1 Main St."));
userNode.AppendChild(addressNode);
localhost.WebService1 testService = new localhost.WebService1();
var res = testService.XMLTest(doc);
return View();
}
MVC - Add simple java script to MVC View
Watch this example on YouTube
@{
ViewBag.Title = "Home Page";
}
<div class="jumbotron">
<h1>ASP.NET</h1>
<p class="lead">ASP.NET is a free web framework for building great Web sites and Web applications using HTML, CSS and JavaScript.</p>
<p><a href="http://asp.net" class="btn btn-primary btn-lg">Learn more »</a></p>
</div>
<div class="row">
<div class="col-md-4">
<h2>Getting started</h2>
<p>
ASP.NET MVC gives you a powerful, patterns-based way to build dynamic websites that
enables a clean separation of concerns and gives you full control over markup
for enjoyable, agile development.
</p>
<p><a class="btn btn-default" href="http://go.microsoft.com/fwlink/?LinkId=301865">Learn more »</a></p>
</div>
<div class="col-md-4">
<h2>Get more libraries</h2>
<p>NuGet is a free Visual Studio extension that makes it easy to add, remove, and update libraries and tools in Visual Studio projects.</p>
<p><a class="btn btn-default" href="http://go.microsoft.com/fwlink/?LinkId=301866">Learn more »</a></p>
</div>
<div class="col-md-4">
<h2>Web Hosting</h2>
<p>You can easily find a web hosting company that offers the right mix of features and price for your applications.</p>
<p><a class="btn btn-default" href="http://go.microsoft.com/fwlink/?LinkId=301867">Learn more »</a></p>
</div>
</div>
@section Scripts{
<script type="text/javascript">
$(document).ready(function () {
alert("here you go!!!");
});
</script>
}
@{
ViewBag.Title = "Home Page";
}
<div class="jumbotron">
<h1>ASP.NET</h1>
<p class="lead">ASP.NET is a free web framework for building great Web sites and Web applications using HTML, CSS and JavaScript.</p>
<p><a href="http://asp.net" class="btn btn-primary btn-lg">Learn more »</a></p>
</div>
<div class="row">
<div class="col-md-4">
<h2>Getting started</h2>
<p>
ASP.NET MVC gives you a powerful, patterns-based way to build dynamic websites that
enables a clean separation of concerns and gives you full control over markup
for enjoyable, agile development.
</p>
<p><a class="btn btn-default" href="http://go.microsoft.com/fwlink/?LinkId=301865">Learn more »</a></p>
</div>
<div class="col-md-4">
<h2>Get more libraries</h2>
<p>NuGet is a free Visual Studio extension that makes it easy to add, remove, and update libraries and tools in Visual Studio projects.</p>
<p><a class="btn btn-default" href="http://go.microsoft.com/fwlink/?LinkId=301866">Learn more »</a></p>
</div>
<div class="col-md-4">
<h2>Web Hosting</h2>
<p>You can easily find a web hosting company that offers the right mix of features and price for your applications.</p>
<p><a class="btn btn-default" href="http://go.microsoft.com/fwlink/?LinkId=301867">Learn more »</a></p>
</div>
</div>
@section Scripts{
<script type="text/javascript">
$(document).ready(function () {
alert("here you go!!!");
});
</script>
}
MVC - Web Service - Catch Timeout exception
Watch this example on YouTube
localhost.WebService1 test = new localhost.WebService1();
test.Timeout = 1000;
try
{
var res = test.HelloWorld();
}
catch (System.Net.WebException e) when (e.Status == System.Net.WebExceptionStatus.SecureChannelFailure)
{
string error = e.Message;
}
catch(Exception e)
{
string error = e.Message;
}
localhost.WebService1 test = new localhost.WebService1();
test.Timeout = 1000;
try
{
var res = test.HelloWorld();
}
catch (System.Net.WebException e) when (e.Status == System.Net.WebExceptionStatus.SecureChannelFailure)
{
string error = e.Message;
}
catch(Exception e)
{
string error = e.Message;
}
MVC - Web Service - Increase time limit on response from a web service
Watch this example on YouTube
localhost.WebService1 test = new localhost.WebService1();
test.Timeout = 4000;
var res = test.TestMethod("Some String");
return View();
Thursday, 13 June 2019
MVC - Web Service - Create Web Service - Pass XML as Parameter and Receive XML in Web Service
Pass xml file (created on the fly) to web service
Watch this example on YouTube
1. Publisher
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Xml;
namespace WebApplication13
{
/// <summary>
/// Summary description for WebService1
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
// To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line.
// [System.Web.Script.Services.ScriptService]
public class WebService1 : System.Web.Services.WebService
{
[WebMethod]
public string HelloWorld()
{
return "Hello World";
}
[WebMethod]
public string TextXML(string xmlFile)
{
XmlDocument doc = new XmlDocument();
doc.LoadXml(xmlFile);
// here do whatever you want with xml file
return "success";
}
}
}
2. Subscriber
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Xml;
namespace WebApplication14.Controllers
{
public class HomeController : Controller
{
public ActionResult Index()
{
XmlDocument doc = new XmlDocument();
XmlNode docNode = doc.CreateXmlDeclaration("1.0", "UTF-8", null);
doc.AppendChild(docNode);
XmlNode usersNode = doc.CreateElement("Users");
doc.AppendChild(usersNode);
XmlNode userNode = doc.CreateElement("User");
XmlAttribute userAttribute = doc.CreateAttribute("ID");
userAttribute.Value = "1";
usersNode.AppendChild(userNode);
XmlNode nameNode = doc.CreateElement("Name");
nameNode.AppendChild(doc.CreateTextNode("Frank"));
userNode.AppendChild(nameNode);
XmlNode addressNode = doc.CreateElement("Address");
addressNode.AppendChild(doc.CreateTextNode("1 Main St."));
userNode.AppendChild(addressNode);
var XMLString = doc.InnerXml;
localhost.WebService1 test = new localhost.WebService1();
var res = test.TextXML(XMLString);
return View();
}
MVC - Simple Web Service Example - Create and Consume web service in less then 4 minutes
Watch this example on YouTube
1. Publisher
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
namespace WebApplication11
{
/// <summary>
/// Summary description for WebService1
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
// To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line.
// [System.Web.Script.Services.ScriptService]
public class WebService1 : System.Web.Services.WebService
{
[WebMethod]
public string HelloWorld()
{
return "Hello World";
}
[WebMethod]
public int Add2Numbers(int n1, int n2)
{
return n1 + n2;
}
}
}
2. Consumer
{
public class HomeController : Controller
{
public ActionResult Index()
{
localhost.WebService1 test = new localhost.WebService1();
var res = test.Add2Numbers(2, 5);
return View();
}
1. Publisher
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
namespace WebApplication11
{
/// <summary>
/// Summary description for WebService1
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
// To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line.
// [System.Web.Script.Services.ScriptService]
public class WebService1 : System.Web.Services.WebService
{
[WebMethod]
public string HelloWorld()
{
return "Hello World";
}
[WebMethod]
public int Add2Numbers(int n1, int n2)
{
return n1 + n2;
}
}
}
2. Consumer
{
public class HomeController : Controller
{
public ActionResult Index()
{
localhost.WebService1 test = new localhost.WebService1();
var res = test.Add2Numbers(2, 5);
return View();
}
Wednesday, 12 June 2019
C# - Remove all commas
Watch this example on YouTube
string a = "a,a a,,d,";
a = a.Replace(",", "");
string a = "a,a a,,d,";
a = a.Replace(",", "");
Tuesday, 11 June 2019
Visual Studio - Find empty lines
Watch this solution on YouTube
Select Regular expressions and search for:
^(?([^\r\n])\s)*\r?$\r?\n
ASP.NET - JavaScript - Fix Error - JavaScript runtime error: Unable to set property 'IsValid' of undefined or null reference
0x800a138f - JavaScript runtime error: Unable to set property 'IsValid' of undefined or null reference
Watch this example on YouTube
to fix it replace
<asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="Validate();" />
with
<asp:Button ID="Button1" runat="server" Text="Button" />
Whole code:
<%@ Page Title="Home Page" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="ASPApplication._Default" %>
<asp:Content ID="BodyContent" ContentPlaceHolderID="MainContent" runat="server">
<asp:DropDownList ID="DropDownList1" runat="server">
<asp:ListItem>Test 1</asp:ListItem>
<asp:ListItem>Test 2</asp:ListItem>
</asp:DropDownList>
<asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="Validate();" />
<asp:ValidationSummary runat="server" HeaderText="Fix the following:" ShowMessageBox="true"
ValidationGroup="MyValidationGroup" />
<asp:CustomValidator runat="server" ErrorMessage="Something went wrong"
ClientValidationFunction="Validate" ValidationGroup="MyValidationGroup" >
</asp:CustomValidator>
<script lang="javascript" type="text/javascript">
function Validate(source, args) {
var e = document.getElementById('<%= DropDownList1.ClientID %>')
var str = e.options[e.selectedIndex].text;
if (str != "") {
args.IsValid = true;
}
else {
args.IsValid = false;
}
}
</script>
</asp:Content>
Watch this example on YouTube
to fix it replace
<asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="Validate();" />
with
<asp:Button ID="Button1" runat="server" Text="Button" />
Whole code:
<%@ Page Title="Home Page" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="ASPApplication._Default" %>
<asp:Content ID="BodyContent" ContentPlaceHolderID="MainContent" runat="server">
<asp:DropDownList ID="DropDownList1" runat="server">
<asp:ListItem>Test 1</asp:ListItem>
<asp:ListItem>Test 2</asp:ListItem>
</asp:DropDownList>
<asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="Validate();" />
<asp:ValidationSummary runat="server" HeaderText="Fix the following:" ShowMessageBox="true"
ValidationGroup="MyValidationGroup" />
<asp:CustomValidator runat="server" ErrorMessage="Something went wrong"
ClientValidationFunction="Validate" ValidationGroup="MyValidationGroup" >
</asp:CustomValidator>
<script lang="javascript" type="text/javascript">
function Validate(source, args) {
var e = document.getElementById('<%= DropDownList1.ClientID %>')
var str = e.options[e.selectedIndex].text;
if (str != "") {
args.IsValid = true;
}
else {
args.IsValid = false;
}
}
</script>
</asp:Content>
Monday, 10 June 2019
C# - Check if string is an integer and if yes - assign it's value to int variable
Watch this example on YouTube
string SomeValue = "33";
int Result;
string Message;
if (int.TryParse(SomeValue, out Result))
{
Message = "it is integer";
}
else
{
Message = "no it is not";
}
string SomeValue = "33";
int Result;
string Message;
if (int.TryParse(SomeValue, out Result))
{
Message = "it is integer";
}
else
{
Message = "no it is not";
}
ASP.NET - Javascript - Fix Error 'Page_ClientValidate' is undefined
Watch this example on YouTube
To fix it replace
<script lang="javascript" type="text/javascript">
function Validate() {
debugger;
try {
var result = Page_ClientValidate('Test');
return result;
}
catch (Error) {
return true;
}
}
</script>
with
<title></title>
<script lang="javascript" type="text/javascript">
function Validate() {
debugger;
try {
if (typeof (Page_ClientValidate) === 'function') {
var result = Page_ClientValidate('Test');
return result;
}
else {
return true;
}
}
catch (Error) {
return true;
}
}
</script>
whole code
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="ASPApplication.WebForm1" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script lang="javascript" type="text/javascript">
function Validate() {
debugger;
try {
if (typeof (Page_ClientValidate) === 'function') {
var result = Page_ClientValidate('Test');
return result;
}
else {
return true;
}
}
catch (Error) {
return true;
}
}
</script>
</head>
<body>
<form id="form1" runat="server" onsubmit="return Validate();">
<div>
<asp:Button ID="Button1" runat="server" Text="Button" />
</div>
</form>
</body>
</html>
To fix it replace
<script lang="javascript" type="text/javascript">
function Validate() {
debugger;
try {
var result = Page_ClientValidate('Test');
return result;
}
catch (Error) {
return true;
}
}
</script>
with
<title></title>
<script lang="javascript" type="text/javascript">
function Validate() {
debugger;
try {
if (typeof (Page_ClientValidate) === 'function') {
var result = Page_ClientValidate('Test');
return result;
}
else {
return true;
}
}
catch (Error) {
return true;
}
}
</script>
whole code
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="ASPApplication.WebForm1" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script lang="javascript" type="text/javascript">
function Validate() {
debugger;
try {
if (typeof (Page_ClientValidate) === 'function') {
var result = Page_ClientValidate('Test');
return result;
}
else {
return true;
}
}
catch (Error) {
return true;
}
}
</script>
</head>
<body>
<form id="form1" runat="server" onsubmit="return Validate();">
<div>
<asp:Button ID="Button1" runat="server" Text="Button" />
</div>
</form>
</body>
</html>
MSSQL - Fix Error - ALTER TABLE only allows columns to be added that can contain nulls, or have a DEFAULT definition specified, or the column being added is an identity or timestamp column, or alternatively if none of the previous conditions are satisfied the table must be empty to allow addition of this column. Column 'SomeNewColumn' cannot be added to non-empty table 'Product' because it does not satisfy these conditions.
Msg 4901, Level 16, State 1, Line 1
ALTER TABLE only allows columns to be added that can contain nulls, or have a DEFAULT definition specified, or the column being added is an identity or timestamp column, or alternatively if none of the previous conditions are satisfied the table must be empty to allow addition of this column. Column 'SomeNewColumn' cannot be added to non-empty table 'Product' because it does not satisfy these conditions.
Watch this example on YouTube
To fix it replace
Alter Table [Product]
ADD SomeNewColumn bit Not Null
GO
with
Alter Table [Product]
ADD SomeNewColumn bit Not Null Default 0
GO
ALTER TABLE only allows columns to be added that can contain nulls, or have a DEFAULT definition specified, or the column being added is an identity or timestamp column, or alternatively if none of the previous conditions are satisfied the table must be empty to allow addition of this column. Column 'SomeNewColumn' cannot be added to non-empty table 'Product' because it does not satisfy these conditions.
Watch this example on YouTube
To fix it replace
Alter Table [Product]
ADD SomeNewColumn bit Not Null
GO
with
Alter Table [Product]
ADD SomeNewColumn bit Not Null Default 0
GO
Saturday, 8 June 2019
MVC - Chart.js - Create Simple Bar Chart
Watch this example on YouTube
1. Download Chart.min.js from
https://www.jsdelivr.com/package/npm/chart.js
2. Common.js
jQuery.extend({
getValues: function (url) {
var result = null;
$.ajax({
url: url,
type: 'post',
contentType: "application/json; charset=utf-8",
dataType: "json",
async: false,
success: function (data) {
result = data;
}
});
return result;
}
});
3. Add to _Layout
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>@ViewBag.Title - My ASP.NET Application</title>
@Styles.Render("~/Content/css")
@Scripts.Render("~/bundles/modernizr")
@Scripts.Render("~/Scripts/jquery-1.10.2.min.js")
@Scripts.Render("~/Scripts/Chart.min.js")
@Scripts.Render("~/Scripts/Common.js")
</head>
4. Chart Model
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace MVCChart.Models
{
public class Chart
{
public string[] labels { get; set; }
public List<Datasets> datasets { get; set; }
}
public class Datasets
{
public string label { get; set; }
public string[] backgroundColor { get; set; }
public string[] borderColor { get; set; }
public string borderWidth { get; set; }
public int[] data { get; set; }
}
}
5. Home Controller
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using MVCChart.Models;
namespace MVCChart.Controllers
{
public class HomeController : Controller
{
public JsonResult BarChartData()
{
Chart _chart = new Chart();
_chart.labels = new string[] { "Jan", "Feb", "Mar" };
_chart.datasets = new List<Datasets>();
List<Datasets> _dataSet = new List<Datasets>();
_dataSet.Add(new Datasets()
{
label = "This Year",
data = new int[] { 40, 60, 20 },
backgroundColor = new string[] { "800000", "#E9967C", "#FF0000" },
borderColor = new string[] { "800000", "#E9967C", "#FF0000" },
borderWidth = "1"
});
_chart.datasets = _dataSet;
return Json(_chart, JsonRequestBehavior.AllowGet);
}
6. Index.cshtml
@{
ViewBag.Title = "Home Page";
}
<canvas id="barChart" width="300" height="100"></canvas>
<script>
var c = document.getElementById("barChart");
var ctx = c.getContext("2d");
var tData = $.getValues("/Home/BarChartData");
var myBarChart = new Chart(ctx, {
type: 'bar',
data: tData
});
</script>
1. Download Chart.min.js from
https://www.jsdelivr.com/package/npm/chart.js
2. Common.js
jQuery.extend({
getValues: function (url) {
var result = null;
$.ajax({
url: url,
type: 'post',
contentType: "application/json; charset=utf-8",
dataType: "json",
async: false,
success: function (data) {
result = data;
}
});
return result;
}
});
3. Add to _Layout
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>@ViewBag.Title - My ASP.NET Application</title>
@Styles.Render("~/Content/css")
@Scripts.Render("~/bundles/modernizr")
@Scripts.Render("~/Scripts/jquery-1.10.2.min.js")
@Scripts.Render("~/Scripts/Chart.min.js")
@Scripts.Render("~/Scripts/Common.js")
</head>
4. Chart Model
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace MVCChart.Models
{
public class Chart
{
public string[] labels { get; set; }
public List<Datasets> datasets { get; set; }
}
public class Datasets
{
public string label { get; set; }
public string[] backgroundColor { get; set; }
public string[] borderColor { get; set; }
public string borderWidth { get; set; }
public int[] data { get; set; }
}
}
5. Home Controller
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using MVCChart.Models;
namespace MVCChart.Controllers
{
public class HomeController : Controller
{
public JsonResult BarChartData()
{
Chart _chart = new Chart();
_chart.labels = new string[] { "Jan", "Feb", "Mar" };
_chart.datasets = new List<Datasets>();
List<Datasets> _dataSet = new List<Datasets>();
_dataSet.Add(new Datasets()
{
label = "This Year",
data = new int[] { 40, 60, 20 },
backgroundColor = new string[] { "800000", "#E9967C", "#FF0000" },
borderColor = new string[] { "800000", "#E9967C", "#FF0000" },
borderWidth = "1"
});
_chart.datasets = _dataSet;
return Json(_chart, JsonRequestBehavior.AllowGet);
}
6. Index.cshtml
@{
ViewBag.Title = "Home Page";
}
<canvas id="barChart" width="300" height="100"></canvas>
<script>
var c = document.getElementById("barChart");
var ctx = c.getContext("2d");
var tData = $.getValues("/Home/BarChartData");
var myBarChart = new Chart(ctx, {
type: 'bar',
data: tData
});
</script>
C# - DropDownList - Get selected value in code behind
Watch this example on YouTube
1. HTML
<asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="true"
OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged">
<asp:ListItem> Test 1</asp:ListItem>
<asp:ListItem> Test 2</asp:ListItem>
</asp:DropDownList>
2. Code Behind
string selectedValue = DropDownList1.SelectedValue.ToString();
Thursday, 6 June 2019
Visual Studio - Find double empty lines
Watch on YouTube
Select Regular expressions and search for:
^(?([^\r\n])\s)*\r?\n(?([^\r\n])\s)*\r?\n
MSSQL - Join the same table multiple times in one simple query
Watch this example on YouTube
1. Table
USE [Company]
GO
/****** Object: Table [dbo].[TestJoin] Script Date: 2019-06-06 7:02:25 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[TestJoin](
[Name] [varchar](50) NULL,
[Manager] [varchar](50) NULL
) ON [PRIMARY]
GO
INSERT [dbo].[TestJoin] ([Name], [Manager]) VALUES (N'Bob', NULL)
GO
INSERT [dbo].[TestJoin] ([Name], [Manager]) VALUES (N'Frank', N'Bob')
GO
INSERT [dbo].[TestJoin] ([Name], [Manager]) VALUES (N'Ann', N'Bob')
GO
INSERT [dbo].[TestJoin] ([Name], [Manager]) VALUES (N'Rob', N'Frank')
GO
INSERT [dbo].[TestJoin] ([Name], [Manager]) VALUES (N'Eddy', N'Frank')
GO
INSERT [dbo].[TestJoin] ([Name], [Manager]) VALUES (N'John', N'Rob')
GO
2. Query
Select TestJoin.Name As Boss ,
TestJoin2.Name As Director,
TestJoin3.Name As Manager,
TestJoin4.Name As Nobody
From TestJoin
Left Outer Join TestJoin As TestJoin2 On TestJoin.Name = TestJoin2.Manager
Left Outer Join TestJoin As TestJoin3 On TestJoin2.Name = TestJoin3.Manager
Left Outer Join TestJoin As TestJoin4 On TestJoin3.Name = TestJoin4.Manager
Where TestJoin.Name = 'Bob'
1. Table
USE [Company]
GO
/****** Object: Table [dbo].[TestJoin] Script Date: 2019-06-06 7:02:25 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[TestJoin](
[Name] [varchar](50) NULL,
[Manager] [varchar](50) NULL
) ON [PRIMARY]
GO
INSERT [dbo].[TestJoin] ([Name], [Manager]) VALUES (N'Bob', NULL)
GO
INSERT [dbo].[TestJoin] ([Name], [Manager]) VALUES (N'Frank', N'Bob')
GO
INSERT [dbo].[TestJoin] ([Name], [Manager]) VALUES (N'Ann', N'Bob')
GO
INSERT [dbo].[TestJoin] ([Name], [Manager]) VALUES (N'Rob', N'Frank')
GO
INSERT [dbo].[TestJoin] ([Name], [Manager]) VALUES (N'Eddy', N'Frank')
GO
INSERT [dbo].[TestJoin] ([Name], [Manager]) VALUES (N'John', N'Rob')
GO
2. Query
Select TestJoin.Name As Boss ,
TestJoin2.Name As Director,
TestJoin3.Name As Manager,
TestJoin4.Name As Nobody
From TestJoin
Left Outer Join TestJoin As TestJoin2 On TestJoin.Name = TestJoin2.Manager
Left Outer Join TestJoin As TestJoin3 On TestJoin2.Name = TestJoin3.Manager
Left Outer Join TestJoin As TestJoin4 On TestJoin3.Name = TestJoin4.Manager
Where TestJoin.Name = 'Bob'
C# - Fix Error - There is no argument given that corresponds to the required formal parameter
There is no argument given that corresponds to the required formal parameter 'r'
watch solution on YouTube
watch solution on YouTube
Wednesday, 5 June 2019
C# - Check if string is double and if yes assign value to variable
Watch this example on YouTube
double test;
string SomeValue = "333";
bool res = false;
if(Double.TryParse(SomeValue, out test))
{
res = true;
}
C# - Check if string is palindrome - if it reads the same backward as forward
watch this example on YouTube
string Test = "ANNA";
bool res = Test.SequenceEqual(Test.Reverse());
ASP.NET - JavaScript - OK/Cancel example in one line in button code
Watch this example on YouTube
<asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click"
OnClientClick="return confirm('Please Confirm you want to proceed');" />
<asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click"
OnClientClick="return confirm('Please Confirm you want to proceed');" />
ASP NET Fix Drop Down List Selected Index Changed not executed
Watch this example on YouTube
To fix it replace
<asp:DropDownList ID="DropDownList1" runat="server" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged">
<asp:ListItem> Test 1</asp:ListItem>
<asp:ListItem> Test 2</asp:ListItem>
</asp:DropDownList>
wtih
<asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="true" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged">
<asp:ListItem> Test 1</asp:ListItem>
<asp:ListItem> Test 2</asp:ListItem>
</asp:DropDownList>
To fix it replace
<asp:DropDownList ID="DropDownList1" runat="server" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged">
<asp:ListItem> Test 1</asp:ListItem>
<asp:ListItem> Test 2</asp:ListItem>
</asp:DropDownList>
wtih
<asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="true" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged">
<asp:ListItem> Test 1</asp:ListItem>
<asp:ListItem> Test 2</asp:ListItem>
</asp:DropDownList>
Saturday, 1 June 2019
C# - Form Application - Show console window in forms application
Watch this example on YouTube
1. Go to Project Properties -> Application -> Output Type -> Console Application
2. then the following code will be executed:
Console.WriteLine("button clicked");
C# - Convert Decimal? to 0 (zero) if null
Watch this example on YouTube
Decimal? z;
z = null;
Decimal zz = Convert.ToDecimal(z);
Thursday, 30 May 2019
MSSQL - Load records only if all specified columns are null
Watch this example on YouTube
Select * From TableWithNulls
Where Coalesce(FName, LName, Address) is null
MSSQL - Load records only if 1 of the specified columns is not null
Watch this example on YouTube
Check if at least 1 column is not null
Select * From TableWithNulls
WHERE Coalesce(FName, LName, Address) is not null
Wednesday, 29 May 2019
MVC - Chart - Display multiple charts in one View
Watch this example on YouTube
1. Controller
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.Helpers;
namespace WebApplication7.Controllers
{
public class HomeController : Controller
{
public ActionResult Chart1()
{
var key = new Chart(width: 300, height: 300)
.AddTitle("Employee 1")
.AddSeries(
chartType: "Bubble",
name: "Emp1",
xValue: new[] { "Peter", "Frank", "Bob", "Ann" },
yValues: new[] { "2", "4", "3", "7" }
);
return File(key.ToWebImage().GetBytes(), "image/jpeg");
}
public ActionResult Chart2()
{
var key = new Chart(width: 300, height: 300)
.AddTitle("Employee 2")
.AddSeries(
chartType: "Column",
name: "Emp2",
xValue: new[] { "Peter", "Frank", "Bob", "Ann" },
yValues: new[] { "2", "4", "3", "7" }
);
return File(key.ToWebImage().GetBytes(), "image/jpeg");
}
2. View
@{
ViewBag.Title = "Home Page";
}
<img src="@Url.Action("Chart1")" />
<img src="@Url.Action("Chart2")" />
Monday, 27 May 2019
MVC - Chart - Display Multiple Series
Watch this example on YouTube
1. Add to Home Controller:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.IO;
using System.Text;
using System.Drawing;
using System.Collections;
using System.Web.Helpers;
namespace WebApplication3.Controllers
{
public class HomeController : Controller
{
public ActionResult ChartWithMultipleValues()
{
Chart key = new Chart(width: 500, height: 500)
.AddTitle("Employee Chart")
.AddLegend("Some legend")
.SetYAxis("Percentage Value", 0, 100)
.AddSeries(
chartType: "Column",
name: "January",
xValue: new[] { "Bob", "Ivan", "Frank", "Anna" },
yValues: new[] { "33", "44", "22", "88" }
)
.AddSeries(
name: "February",
yValues: new[] { "99", "78", "88", "33" }
);
return File(key.ToWebImage().GetBytes(), "image/jpeg");
}
2. View
@{
ViewBag.Title = "Home Page";
}
<img src="@Url.Action("ChartWithMultipleValues")" />
1. Add to Home Controller:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.IO;
using System.Text;
using System.Drawing;
using System.Collections;
using System.Web.Helpers;
namespace WebApplication3.Controllers
{
public class HomeController : Controller
{
public ActionResult ChartWithMultipleValues()
{
Chart key = new Chart(width: 500, height: 500)
.AddTitle("Employee Chart")
.AddLegend("Some legend")
.SetYAxis("Percentage Value", 0, 100)
.AddSeries(
chartType: "Column",
name: "January",
xValue: new[] { "Bob", "Ivan", "Frank", "Anna" },
yValues: new[] { "33", "44", "22", "88" }
)
.AddSeries(
name: "February",
yValues: new[] { "99", "78", "88", "33" }
);
return File(key.ToWebImage().GetBytes(), "image/jpeg");
}
2. View
@{
ViewBag.Title = "Home Page";
}
<img src="@Url.Action("ChartWithMultipleValues")" />
MVC - C# - How to remove duplicates from the array
Watch this example on YouTube
int[] a = { 1, 2, 3, 2, 3, 1, 5, 5, 6 };
int[] b = a.Distinct().ToArray();
or
int[] a = { 1, 2, 3, 2, 3, 1, 5, 5, 6 };
a = a.Distinct().ToArray();
Saturday, 25 May 2019
MVC - Chart - Create Simple Chart and load data from DB - Entity Framework
Watch this example on YouTube
1. Controller
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using WebApplication7.Models;
using System.Collections;
using System.Web.Helpers;
namespace WebApplication7.Controllers
{
public class HomeController : Controller
{
CompanyEntities db = new CompanyEntities();
public ActionResult GetChartImage()
{
ArrayList xValue = new ArrayList();
ArrayList yValue = new ArrayList();
var results = db.GetProducts().ToList();
results.ToList().ForEach(rs => xValue.Add(rs.Month));
results.ToList().ForEach(rs => yValue.Add(rs.Amount));
var key = new Chart(width: 300, height: 300)
.AddTitle("Months")
.AddSeries(chartType: "Pie",
name: "Some Name",
xValue: xValue,
yValues: yValue);
return File(key.ToWebImage().GetBytes(), "image/jpeg");
}
public ActionResult Index()
{
return View();
}
2. View
@{
ViewBag.Title = "Home Page";
}
<img src="@Url.Action("GetChartImage")" />
MVC - Create simple Chart
Watch this example on YouTube
1. Home Controller
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.Helpers;
namespace WebApplication7.Controllers
{
public class HomeController : Controller
{
public ActionResult GetChartImage()
{
var key = new Chart(width: 300, height: 300)
.AddTitle("Employee Chart")
.AddSeries(
chartType: "Bubble",
name: "Employee",
xValue: new[] {"Frank", "John", "Bob", "Ann"},
yValues: new[] {"33", "22", "55", "44"}
);
return File(key.ToWebImage().GetBytes(), "image/jpeg");
}
public ActionResult Index()
{
return View();
}
2. View
@{
ViewBag.Title = "Home Page";
}
<img src="@Url.Action("GetChartImage")" />
MSSQL - Fix Error - The server principal 'LIVING\Administrator' already exists.
Msg 15025, Level 16, State 2, Line 1
The server principal 'LIVING\Administrator' already exists.
Watch this example on YouTube
The server principal 'LIVING\Administrator' already exists.
Watch this example on YouTube
Fix Error - The type or namespace name 'Chart' could not be found (are you missing a using directive or an assembly reference?)
Error CS0246 The type or namespace name 'Chart' could not be found (are you missing a using directive or an assembly reference?)
Watch this example on YouTube
To fix it add
using System.Web.Helpers;
Wednesday, 22 May 2019
Microsoft Excel - Remove duplicates from colum row or cell
Watch this example on YouTube
1. select column row or cell
2. Go to Data -> Data Tools -> Remove Duplicates
Microsoft Excel - How to setup column or cell or row that allows only positive numbers
Watch this example on YouTube
1. Highlight column or row or cell
2. Go to Data -> Data Tools -> Data Validation
3. Data Validation -> settings -> Allow: Decimal, Greater Than, Minimum:0
4. Error Alert -> error message -> enter error message here
Tuesday, 21 May 2019
Microsoft Excel - Compare if 2 cells are the same
Watch this example on YouTube
This formula will check if 2 cells are the same:
=IF(EXACT(A1, B1), "Yes", "No")
Monday, 20 May 2019
MVC - Charting - Display multiple series using data from SqlServer( Entity Framework)
Watch this example on YouTube
1. Table
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[ChartTest](
[ProductName] [varchar](50) NULL,
[Month] [varchar](50) NULL,
[Amount] [int] NULL
) ON [PRIMARY]
GO
INSERT [dbo].[ChartTest] ([ProductName], [Month], [Amount]) VALUES (N'Apple', N'Jan', 20)
GO
INSERT [dbo].[ChartTest] ([ProductName], [Month], [Amount]) VALUES (N'Apple', N'Feb', 40)
GO
INSERT [dbo].[ChartTest] ([ProductName], [Month], [Amount]) VALUES (N'Apple', N'Mar', 22)
GO
INSERT [dbo].[ChartTest] ([ProductName], [Month], [Amount]) VALUES (N'Apple', N'Apr', 44)
GO
INSERT [dbo].[ChartTest] ([ProductName], [Month], [Amount]) VALUES (N'Orange', N'Jan', 55)
GO
INSERT [dbo].[ChartTest] ([ProductName], [Month], [Amount]) VALUES (N'Orange', N'Feb', 22)
GO
INSERT [dbo].[ChartTest] ([ProductName], [Month], [Amount]) VALUES (N'Orange', N'Mar', 33)
GO
INSERT [dbo].[ChartTest] ([ProductName], [Month], [Amount]) VALUES (N'Orange', N'Apr', 88)
GO
2. Stored Procedure
CREATE PROCEDURE [dbo].[GetProducts]
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- Insert statements for procedure here
SELECT * FROM ChartTest
END
3. Controller
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.UI.DataVisualization.Charting;
using System.IO;
using System.Text;
using System.Drawing;
using WebApplication4.Models;
namespace WebApplication4.Controllers
{
public class HomeController : Controller
{
CompanyEntities db = new CompanyEntities();
public ActionResult ChartMultiColumns()
{
var dataAll = db.GetProducts().ToList();
var months = from d in dataAll orderby d.Month group d by d.Month into m select m.Key;
var chart = new Chart();
foreach(var mn in months)
{
var data = from d in dataAll where d.Month == mn select d;
var area = new ChartArea();
chart.ChartAreas.Add(area);
var series = new Series();
foreach(var item in data)
{
series.Points.AddXY(item.ProductName, item.Amount);
}
series.ChartType = SeriesChartType.Column;
series.Name = data.First().Month;
chart.Series.Add(series);
}
Legend chartLegend = new Legend();
chartLegend.Name = "Result";
chartLegend.LegendStyle = LegendStyle.Column;
chart.Legends.Add(chartLegend);
var returnStream = new MemoryStream();
chart.ImageType = ChartImageType.Png;
chart.SaveImage(returnStream);
returnStream.Position = 0;
return new FileStreamResult(returnStream, "image/png");
}
4. View
@{
ViewBag.Title = "ChartMultiColumns";
}
<h2>ChartMultiColumns</h2>
<img src="@Url.Action("ChartMultiColumns")" />
Saturday, 18 May 2019
MVC - Charting - Create simple chart from database using Entity Framework - Step By Step
Watch this example on YouTube:
1. Table
USE [Company]
GO
/****** Object: Table [dbo].[ChartTest] Script Date: 2019-05-18 3:31:57 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[ChartTest](
[ProductName] [varchar](50) NULL,
[Month] [varchar](50) NULL,
[Amount] [int] NULL
) ON [PRIMARY]
GO
2. Stored Procedure
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
CREATE PROCEDURE GetProducts
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- Insert statements for procedure here
SELECT * FROM ChartTest
END
GO
3. Controller
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using WebApplication3.Models;
using System.Web.UI.DataVisualization.Charting;
using System.IO;
using System.Text;
using System.Drawing;
namespace WebApplication3.Controllers
{
public class HomeController : Controller
{
CompanyEntities db = new CompanyEntities();
public ActionResult ChartFromEF()
{
var data = db.GetProducts().ToList();
var chart = new Chart();
var area = new ChartArea();
chart.ChartAreas.Add(area);
var series = new Series();
foreach(var item in data)
{
series.Points.AddXY(item.ProductName, item.Amount);
}
series.Label = "#PERCENT{P0}";
series.Font = new Font("Arial", 8.0f, FontStyle.Bold);
series.ChartType = SeriesChartType.Column;
series["PieLabelStyle"] = "Outside";
chart.Series.Add(series);
var returnStream = new MemoryStream();
chart.ImageType = ChartImageType.Png;
chart.SaveImage(returnStream);
returnStream.Position = 0;
return new FileStreamResult(returnStream, "image/png");
}
4. View
@{
ViewBag.Title = "ChartFromEF";
}
<h2>ChartFromEF</h2>
<img src="@Url.Action("ChartFromEF")" />
1. Table
USE [Company]
GO
/****** Object: Table [dbo].[ChartTest] Script Date: 2019-05-18 3:31:57 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[ChartTest](
[ProductName] [varchar](50) NULL,
[Month] [varchar](50) NULL,
[Amount] [int] NULL
) ON [PRIMARY]
GO
2. Stored Procedure
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
CREATE PROCEDURE GetProducts
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- Insert statements for procedure here
SELECT * FROM ChartTest
END
GO
3. Controller
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using WebApplication3.Models;
using System.Web.UI.DataVisualization.Charting;
using System.IO;
using System.Text;
using System.Drawing;
namespace WebApplication3.Controllers
{
public class HomeController : Controller
{
CompanyEntities db = new CompanyEntities();
public ActionResult ChartFromEF()
{
var data = db.GetProducts().ToList();
var chart = new Chart();
var area = new ChartArea();
chart.ChartAreas.Add(area);
var series = new Series();
foreach(var item in data)
{
series.Points.AddXY(item.ProductName, item.Amount);
}
series.Label = "#PERCENT{P0}";
series.Font = new Font("Arial", 8.0f, FontStyle.Bold);
series.ChartType = SeriesChartType.Column;
series["PieLabelStyle"] = "Outside";
chart.Series.Add(series);
var returnStream = new MemoryStream();
chart.ImageType = ChartImageType.Png;
chart.SaveImage(returnStream);
returnStream.Position = 0;
return new FileStreamResult(returnStream, "image/png");
}
4. View
@{
ViewBag.Title = "ChartFromEF";
}
<h2>ChartFromEF</h2>
<img src="@Url.Action("ChartFromEF")" />
Monday, 13 May 2019
MVC - Charting - Create simple chart
Watch this example on YouTube
Controller
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.UI.DataVisualization.Charting;
using System.IO;
using System.Text;
using System.Drawing;
namespace MVCCharting.Controllers
{
public class HomeController : Controller
{
public ActionResult Chrt1()
{
var data = new Dictionary<string, float>
{
{"test1", 10.1f },
{"test2", 1.1f },
{"test3", 22.3f },
{"test4", 30.1f },
{"test5", 13.1f },
{"test6", 82.3f }
};
var chart = new Chart();
var area = new ChartArea();
chart.ChartAreas.Add(area);
var series = new Series();
foreach (var item in data)
{
series.Points.AddXY(item.Key, item.Value);
}
series.Label = "Some Label";
series.Font = new Font("Arial", 10.0f, FontStyle.Bold);
series.ChartType = SeriesChartType.Column;
series["PieLabelStyle"] = "Outside";
chart.Series.Add(series);
var returnStream = new MemoryStream();
chart.ImageType = ChartImageType.Png;
chart.SaveImage(returnStream);
returnStream.Position = 0;
return new FileStreamResult(returnStream, "image/png");
}
View
@{
ViewBag.Title = "Chrt1";
}
<h2>Chrt1</h2>
<img src="@Url.Action("Chrt1")" />
Subscribe to:
Posts (Atom)