ASP.NET 4.5 and ASP.NET Core 1 Hosting BLOG

Tutorial and Articles about ASP.NET 4.0 and the latest ASP.NET 4.5 Hosting

ASP.NET 4.5 Hosting - ASPHostPortal.com :: Page Instrumentation in ASP.NET 4.5

clock December 27, 2013 11:03 by author Robert

 

In this article, I showed you how to use Page Instrumentation, a new  feature in ASP.NET 4.5 which might be useful for you during debugging.
ASP.NET 4.5 include a hidden gem called Page Instrumentation, very few people aware of this gem. You can use page instrumentation in ASP.NET 4.5 WebForm and MVC 5 or 4(assuming it targets 4.5). It allows you to inspect/instrument a web form or a mvc view during the rendering process. Page instrumentation are useful in scenarios when you have some performance issues regarding view engine rendering. In this article, I will show you how to use this feature in ASP.NET 4.5.

To start instrumenting a page, you need to inherit PageExecutionListener class.

The BeginContext will be called by a view engine before it renders the output for the specified context. Similarly, EndContext called by a view engine after it renders the output for the specified context. Both of these methods accept PageExecutionContext class as a parameter which have the following members.

All the properties of PageExecutionContext class are self explanatory. Let assume we have the following MVC view(for understanding how many times and when the BeginContext and EndContext will be invoke by the framework).

The Razor View Engine will emit the following C# code


Finally, here is a simple implementation of PageExecutionListener class which calculates the total time each time whenever something is written to the output response.

 



ASP.NET 4.5 Hosting - Security Improvement in ASP.NEt 4.5

clock March 18, 2013 08:21 by author andy_yo

The .NET 4.5 framework was released a couple of months ago and it included several improvements in the security area. To benefit from these improvements you need to do a few changes to you application's configuration file.
There are some important improvement in ASP.NET 4.5:

  • There are changes to the ASP.NET request validation, it now supports deferred (lazy) validation, as well as giving the option to fetch data unvalidated.
  • The AntiXSS library is included in the framework.
  • There are significant Cryptographic Improvements in ASP.NET 4.5.
  • Windows Identity Foundation is now included in the framework, referred to as WIF 4.5.

About ASPHostPortal.com

ASPHostPortal.com is Microsoft No #1 Recommended Windows and ASP.NET Spotlight Hosting Partner in United States. Microsoft presents this award to ASPHostPortal.com for ability to support the latest Microsoft and ASP.NET technology, such as: WebMatrix, WebDeploy, Visual Studio 2012, ASP.NET 4.5, ASP.NET MVC 4.0, Silverlight 5 and Visual Studio Lightswitch. Click here for more information

To take advantage of these new bits you'll have to do a bit of configuration, we'll get into that right away:

Switching to 4.5
While retargeting a couple of MVC applications to the new framework version, I learned that it's not enough to install the 4.5 framework and change the "Target framework" accordingly. You'll find that a comment appears in the web.config file:
<!--
    For a description of web.config changes for .NET 4.5 see http://go.microsoft.com/fwlink/?LinkId=235367.       
    The following attributes can be set on the <httpRuntime> tag.      
     <system.Web>
        <httpRuntime targetFramework="4.5" />
     </system.Web>

-->
It's important that you set the targetFramework in your configuration file, else your application will run in "4.0" mode.

Enabling AntiXss
You'd want to set the AntiXss library as the default encoder — that can easily be done in the httpRuntime configuration element:

<httpRuntime targetFramework="4.5" encoderType="System.Web.Security.AntiXss.AntiXssEncoder,System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />

Note that there can be side effects to this, as AntiXSS takes a white list approach to encoding. That means that there may be characters that weren't encoded before, that will be encoded by AntiXSS.

Request validation
Lazy validation was introduced in ASP.NET 4.5, I just did some testing on it and it seems that lazy validation is the enabled regardless of how you set the "requestValidationMode", after you've installed the 4.5 framework. However, if you need access to any request parameters unvalidated, you'll need to set the validation mode to "4.5", as such:
<httpRuntime targetFramework="4.5" requestValidationMode="4.5" />
This will give you access to the unvalidated collections of parameters, e.g.:

Request.Unvalidated.QueryString["lastName"];
This is a much better approach than disabling request validation altogether. But use it with care, as always you should throroughly validate the input.

WIF 4.5
WIF is now part of the framework — that meant some breaking changes. It shouldn't take to much time to upgrade though,  particularly if you're concerned with RP's. There's a great article on MSDN with Guidelines for Migrating an Application Built Using WIF 3.5 to WIF 4.5.
There's two apparent changes I'd like to point out. First, you no longer need to set the "requestValidationMode" to "2.0" to cope with the request validation exceptions on the SignInResponseMessage's posted from an STS. WIF 4.5 plays nicely with the 4.5 request validation. Second, WIF now includes a MachineKeySessionSecurityTokenHandler which encrypts and MAC's WIF cookies based on the machine key. You'll find everything you need to set it up in: WIF and Web Farms.

 

 



ASP.NET Hosting - How To Make URL More User Friendly (URL Rewriting)

clock February 27, 2013 05:24 by author andy_yo

Sometimes we need a user friendly URL, but if we use query string variables, our site url will become messy.

Like we may be having

URL A: http://www.asphostportal.com/product.aspx?id=123456

and we want to have a URL for above as

URL B: http://www.asphostportal.com/product_123456.aspx

Obviously from above two the 2nd one is more user friendly and easily readable. Now the question is how to accomplish this task. The solution is very simple. In following I will be explaining the solution in detail

About ASPHostPortal.com

ASPHostPortal.com is Microsoft No #1 Recommended Windows and ASP.NET Spotlight Hosting Partner in United States. Microsoft presents this award to ASPHostPortal.com for ability to support the latest Microsoft and ASP.NET technology, such as: WebMatrix, WebDeploy, Visual Studio 2012, ASP.NET 4.5, ASP.NET MVC 4.0, Silverlight 5 and Visual Studio Lightswitch. Click here for more information

The Solution

Though there are more than one ways for this task but I will make use of the method "application_beginrequest" of "Global.asax". This method is called every time some request is made to the website.

Following will be the code to convert URL A into URL B in VB and C# programming language. You can modify this code as per your need.

VB

Public Sub application_beginrequest(ByVal sender As Object, ByVal e As EventArgs)
     Try
        Dim initialurl As String = Request.Url.ToString
        If initialurl.ToLower.IndexOf("product_") >= 0 Then
            Dim mTemp As String = initialurl.Substring(initialurl.LastIndexOf("_") + 1)
            Dim mProductID As Integer = mTemp.Substring(0, mTemp.LastIndexOf(".aspx"))
            Dim mOriginalURL As String = "product.aspx?id=" + mProductID
            Context.RewritePath(mOriginalURL)
        End If
        'Code to Log your Error
     Catch ex As Exception
     End Try
End Sub

CSharp (C#)

public void application_beginrequest(object sender, EventArgs e)
{
    try
    {
        string initialurl = Request.Url.ToString();
        if (initialurl.ToLower().IndexOf("product_") >= 0)
        {
            string mTemp = initialurl.Substring(initialurl.LastIndexOf("_") + 1);
            int mProductID = Convert.ToInt32(mTemp.Substring(0, mTemp.LastIndexOf(".aspx")));
            string mOriginalURL = "product.aspx?id=" + mProductID;
            Context.RewritePath(mOriginalURL);
        }
    }
    catch (Exception ex)
    {
        //Code to Log your Error
    }
}



NOP Commerce Hosting - Create NOP Commerce Theme

clock January 23, 2013 08:30 by author andy_yo

This tutorial does not require Visual Studio and does not need any type of recompile of the nopCommerce code. You can do everything in this tutorial with notepad and access to the file system nopCommerce is installed in (FTP, network, SCP, etc).

About ASPHostPortal.com

ASPHostPortal.com is Microsoft No #1 Recommended Windows and ASP.NET Spotlight Hosting Partner in United States. Microsoft presents this award to ASPHostPortal.com for ability to support the latest Microsoft and ASP.NET technology, such as: WebMatrix, WebDeploy, Visual Studio 2012, ASP.NET 4.5, ASP.NET MVC 4.0, Silverlight 5 and Visual Studio Lightswitch. Click here for more information

This tutorial applies to:

nopCommerce 2.0, nopCommerce 2.1, nopCommerce 2.2, nopCommerce 2.3

To get started you are going to copy one of the pre-existing themes and use it as the base of your new theme. So go to the root of your nopCommerce store and drill down to the theme section.

[root]/NopCommerceStore/Themes/

Step 1 – Copy the Directory

Here you should see a couple of themes, which themes exactly depend on the version of nopCommerce you are using. I recommend selecting “NopClassic” or “darkOrange”, and copy either one in the theme directory as a copy. Then rename that directory.

Step 2 – Edit “theme.config”

Update “theme.config” (\Themes\YourThemeName\theme.config) and update the title, the rest of the XML doesn’t impact the display of the theme. This just effects the title on the theme drop down in the admin section. If you leave it the same you will not able to tell which theme is which. So the file should now look something like this after you have edited it.

 

Step 3 – Edit “head.cshtml”

Now updated the “head.cshtml” file (\Themes\YourThemeName\Views\Shared\Head.cshtml). This is the real gotcha for me, missing this step will make your new theme directory appear as if it is stuck using the theme you copied it from. Change both of the “link href” values to reflect the directory of your new theme. In my case it looked like this.

Step 4 – Select Theme in nopCommerce Admin

Once you have completed this step update the nopCommerce Admin to reflect the fact that you wish to use your new theme. If you don’t see your theme listed, restart IIS. NopCommerce has its own internal caching algorithium and it can take some time to notice an updated to the backend like this one.

Any changes you want to make to your copied theme can now be done. The important directories and files for the designers in the audience are…

Main CSS File

[root]/NopCommerceStore/Themes/YourThemeName/Content/styles.css

Images and Media

[root]/NopCommerceStore/Themes/YourThemeName/Content/images



Windows Server 2012 Hosting - Top 10 Windows Server 2012 Features

clock January 17, 2013 10:26 by author andy_yo

Many IT professionals and system administrators are evaluating the software for deployment Windows Server 2012 since it has been officially available in September 9th, 2012. Here are the top 10 features that we think noteworthy new (or improved) features in Windows Server 2012.

About ASPHostPortal.com

ASPHostPortal.com is Microsoft No #1 Recommended Windows and ASP.NET Spotlight Hosting Partner in United States. Microsoft presents this award to ASPHostPortal.com for ability to support the latest Microsoft and ASP.NET technology, such as: WebMatrix, WebDeploy, Visual Studio 2012, ASP.NET 4.5, ASP.NET MVC 4.0, Silverlight 5 and Visual Studio Lightswitch. Click here for more information

Top 10 Windows Server 2012 Features

1. Data Deduplication

One of the constants of technology and the IT industry is that data storage demands and requirements are increasing exponentially. From ballooning email inboxes to file shares overflowing with documents, just about every enterprise has a need for more efficient. That’s where the new data deduplication features in Windows Server 2012 come in handy.

It works like this: Say you have a large number of VHD (virtual hard disk) files that you need to move. Each of those VHDs has a lot of duplicate (yet identical) files and applications, like minesweeper, Windows calculator, and other accessory applications. Data deduplication removes all of the copies of those applications from those VHDs but one. It then records the redundant data in a separate location in System Volume Information (SVI) and points to the files that serves as the source template. This can free up tremendous amounts of space, especially when applied across thousands of files across your network. Data deduplication works across different computer networks and also across Windows 8 and Windows Server 2012 machines. If you have lots of files and data to store and not enough space – and who doesn’t – this could be the killer feature.

2. GUI-less install options

There are plenty of times when you only want to install only the absolute minimum files and assets you need to run Windows Server, and Windows Server 2012 now includes a default installation option to install the GUI-less server core. You can also now install Windows Server 2012 with a minimal user interface, which means that you have even more ways than ever to install just the Windows Server files you need. This reduces disk space, saves on administration effort, and reduces your attack surface from hackers and other digital malcontents by restricting installed files to the absolute minimum.

3. Hyper-V 3.0

Windows Server 2012 is loaded with new features, but perhaps the feature that has gone through the most radical improvement is the Hyper-V virtualization feature set. Tired of playing catch-up to VMware on the feature front, Microsoft has loaded Hyper-V with an impressive list of improvements. Some of the highlights include support for up to 64 processors and 1TB of RAM per virtual machine, as well as support for up to 320 logical hardware processors and 4TB of RAM per host. VMware vSphere 5.1 evens the playing field in some areas, but the message is clear: Microsoft is doing everything it can to unseat VMware as the virtualization platform of choice in the enterprise.

4. IP Address Management (IPAM)

One of the biggest headaches for many IT professionals is keeping tabs on IP addresses used on their corporate networks. In a bid to end the time-honored practice of storing IP addresses in Excel spreadsheets, IPAM is a new feature in Windows Server 2012 that provides a new internal framework for locating and managing IP address spaces on networks. You can also manage and monitor servers running Domain Name Service (DNS) and Dynamic Host Configuration Protocol (DHCP). It also does automatic IP discovery and provides a host of other IP-related tasks focused on management, monitoring, and auditing.

5. Network virtualization changes

One of the more problematic aspects of virtual machine management and provision is dealing with the rules and limitations of IP address management. Microsoft is making a raft of improvements to network virtualization in Windows Server 2012, all aimed at tackling problems related to IP addresses and virtual machines. This helps pave the way for private cloud adoption, and also removes barriers for more infrastructure as a service (IaaS) adoption easier for internal IT stakeholders and hosting customers to implement.

6. ReFS

The venerable NTFS file system format has been used for more than a decade by Microsoft. Recent demands from virtualization and private cloud computing have pushed NTFS as far as it could go, so Microsoft decided to add new features and revamp existing ones to NTFS. The result is an upgrade to NTFS dubbed Re-FS for resilient file system.

Re-FS adds a bumper crop of new storage features and improvements, with some of the highlights being increased support for larger file and directory sizes, disk scrubbing, data striping for improved performance, enhanced virtualization support, and it takes advantages of all the new storage pool and spaces features in Windows Server 2012.

7. Shared nothing live migration

One of the more impressive new features of Hyper-V 3.0 is shared nothing live migration, which allows you to move VMs from one machine to another without the requirement of having shared storage before making the transfer. This feature can be a boon for smaller IT departments, and it makes it easy to move VMs around without expensive share storage. It one of the most impressive features in Windows Server 2012, and it will help small- to mid-size IT departments become even more agile and responsive to business and customer needs.

8. Storage pools and spaces

Most IT departments have to contend with a dizzying assortment of storage hardware and medium types, from leading-edge SSD drives and spinning disks to removable drives and legacy magnetic reel tape. Making effective use of all those disparate storage formats can sometimes be a Herculean task, especially when you throw in the ever-increasing storage demands that today’s workplaces place on IT departments. Microsoft is hoping to help admins address that by introducing Storage Pools and Spaces, two storage abstractions concepts being introduced in Windows Server 2012.

Storage Pools aggregate these heterogeneous physical storage devices into cohesive units where it’s relatively easy to add storage capacity by adding additional storage. As mentioned previously, the devices in storage pools don’t have to be homogenous from the perspective of either device or storage size; you can mix and match devices and sizes here.

Storage Spaces takes that concept even further by allowing you to create virtual disks that have the same characteristics as physical devices: they can be attached, removed, backed up, and otherwise managed exactly the same as traditional physical disks. But Spaces have even more useful features and capabilities, including enhanced capabilities when combined with virtualization and private cloud solutions. They also have additional capabilities on the backup, recovery, and high-availability front, and improvement in the realm of thin provisioning as well.

9. PowerShell 3.0

PowerShell has been steadily gaining in popularity over the last few years, and Microsoft pulled out all the stops for PowerShell support in Windows Server 2012. More than 2000 PowerShell cmdlets are now included, and the newly enhanced stable of commands allows IT professionals to automate and control more aspects of their Windows Server 2012 environment through the PowerShell command line that ever before. This latest update to PowerShell also included improved web access, the ability to schedule jobs, support for disconnected sessions, enhanced and editable help files, and dozens of other new features.

10. CHKDSK changes

Everyone reading this is probably already intimately familiar with the ubiquitous CHKDSK application, which has been in use in various forms since MS-DOS 1.0. We’ve all stepped out for a cup of coffee when the dreaded CHKDSK disk scan kicks off on a server or client equipped with large disk storage.

Microsoft has responded to this productivity killer by revamping CHKDSK in Windows Server 2012. Rather than spending vast amounts of time laboriously scanning through sectors on large disks, the new and improved CHKDSK now scans disks in two phases: An online phase that detects errors and logs defects (and which also can run in the background), and an actual repair phase that does the actual fixing of corrupted drive data.



ASP.NET Hosting - ASPHostPortal :: How to Add Custom Event in Web User Control

clock December 15, 2010 03:46 by author Jervis

It’s easy and you just need to follow this steps:

1. Declare event in the user control


public EventHandler AddNew;

2) Fire that event form user controls event.

if (AddNew != null)
AddNew(sender, e);


(like button click event in that control.)

3) Now asign that event in Page_OnInit event for that control.

protected override void OnInit(EventArgs e)
{
myUserCotrol1.AddNew = new EventHandler(MyNewEventMethod);
}


4) Now wight down that method in which one you declared in page onInit event

protected void MyNewEventMethod (object sender, EventArgs e)
{
//Some code;
//Some code;
}


Done!!!!

Reasons why you must trust ASPHostPortal.com

Every provider will tell you how they treat their support, uptime, expertise, guarantees, etc., are. Take a close look. What they’re really offering you is nothing close to what ASPHostPortal does. You will be treated with respect and provided the courtesy and service you would expect from a world-class web hosting business.

You’ll have highly trained, skilled professional technical support people ready, willing, and wanting to help you 24 hours a day. Your web hosting account servers are monitored from three monitoring points, with two alert points, every minute, 24 hours a day, 7 days a week, 365 days a year. The followings are the list of other added- benefits you can find when hosting with us:

- DELL Hardware
Dell hardware is engineered to keep critical enterprise applications running around the clock with clustered solutions fully tested and certified by Dell and other leading operating system and application providers.
- Recovery Systems
Recovery becomes easy and seamless with our fully managed backup services. We monitor your server to ensure your data is properly backed up and recoverable so when the time comes, you can easily repair or recover your data.
- Control Panel
We provide one of the most comprehensive customer control panels available. Providing maximum control and ease of use, our Control Panel serves as the central management point for your ASPHostPortal account. You’ll use a flexible, powerful hosting control panel that will give you direct control over your web hosting account. Our control panel and systems configuration is fully automated and this means your settings are configured automatically and instantly.
- Excellent Expertise in Technology
The reason we can provide you with a great amount of power, flexibility, and simplicity at such a discounted price is due to incredible efficiencies within our business. We have not just been providing hosting for many clients for years, we have also been researching, developing, and innovating every aspect of our operations, systems, procedures, strategy, management, and teams. Our operations are based on a continual improvement program where we review thousands of systems, operational and management metrics in real-time, to fine-tune every aspect of our operation and activities. We continually train and retrain all people in our teams. We provide all people in our teams with the time, space, and inspiration to research, understand, and explore the Internet in search of greater knowledge. We do this while providing you with the best hosting services for the lowest possible price.
- Data Center
ASPHostPortal modular Tier-3 data center was specifically designed to be a world-class web hosting facility totally dedicated to uncompromised performance and security
- Monitoring Services
From the moment your server is connected to our network it is monitored for connectivity, disk, memory and CPU utilization – as well as hardware failures. Our engineers are alerted to potential issues before they become critical.
- Network
ASPHostPortal has architected its network like no other hosting company. Every facet of our network infrastructure scales to gigabit speeds with no single point of failure.
- Security
Network security and the security of your server are ASPHostPortal’s top priorities. Our security team is constantly monitoring the entire network for unusual or suspicious behavior so that when it is detected we can address the issue before our network or your server is affected.
- Support Services
Engineers staff our data center 24 hours a day, 7 days a week, 365 days a year to manage the network infrastructure and oversee top-of-the-line servers that host our clients’ critical sites and services.



ASP.NET 4.0 Hosting :: Auto Start Web Applications in ASP.NET 4.0

clock November 11, 2010 06:47 by author Jervis

Some web applications require large amount of initialization processing time before serving the first request. In some cases web applications may also need to load the large amount of data in first request.

In earlier versions we used write the custom code in Application_Load method in Global.asax file to handle above scenarios.

Auto Start Feature which addresses this scenario is available when ASP.NET 4.0 runs on IIS 7.5 on windows server 2008 R2.

The feature enables you to

- Starting up an application pool
- Initializing an ASP.NET application


Configuring the auto-start feature for application pool in IIS 7.5

You need to set the following configuration in applicationHost.config file.

<applicationPools>
    <add name="MyApplicationPool" startMode="AlwaysRunning"  />
</applicationPools>

If your application pool containing multiple applications, you can auto-start individual applications by setting the following configuration in applicationHost.config file.

<sites>
  <site name="MySite" id="1">
    <application path="/"
         preloadEnabled="true"
         preloadProvider="PrewarmMyCache" >
        <!--  Additional content -->
    </application>
  </site>
</sites>

When an individual application pool is recycled IIS 7.5 uses the information in applicationHost.config file to determine which applications need to be automatically started.

When you set auto-start feature for application then IIS 7.5 sends a request to ASP.NET 4.0 to start the application. In this state application temporarily does not accept HTTP requests. After the initialization process, the ASP.NET application is ready to process the requests.

Advantage Using IIS 7.5 and ASP.NET 4.0 we now have a well-defined approach for performing expensive application initialization before processing first HTML request.

Example: with this auto-start feature we can initialize an application and then signal the load balancing server that the application was initialized and ready to accept HTTP traffic.

Reasons why you must trust ASPHostPortal.com

Every provider will tell you how they treat their support, uptime, expertise, guarantees, etc., are. Take a close look. What they’re really offering you is nothing close to what ASPHostPortal does. You will be treated with respect and provided the courtesy and service you would expect from a world-class web hosting business.

You’ll have highly trained, skilled professional technical support people ready, willing, and wanting to help you 24 hours a day. Your web hosting account servers are monitored from three monitoring points, with two alert points, every minute, 24 hours a day, 7 days a week, 365 days a year. The followings are the list of other added- benefits you can find when hosting with us:

- DELL Hardware
Dell hardware is engineered to keep critical enterprise applications running around the clock with clustered solutions fully tested and certified by Dell and other leading operating system and application providers.
- Recovery Systems
Recovery becomes easy and seamless with our fully managed backup services. We monitor your server to ensure your data is properly backed up and recoverable so when the time comes, you can easily repair or recover your data.
- Control Panel
We provide one of the most comprehensive customer control panels available. Providing maximum control and ease of use, our Control Panel serves as the central management point for your ASPHostPortal account. You’ll use a flexible, powerful hosting control panel that will give you direct control over your web hosting account. Our control panel and systems configuration is fully automated and this means your settings are configured automatically and instantly.
- Excellent Expertise in Technology
The reason we can provide you with a great amount of power, flexibility, and simplicity at such a discounted price is due to incredible efficiencies within our business. We have not just been providing hosting for many clients for years, we have also been researching, developing, and innovating every aspect of our operations, systems, procedures, strategy, management, and teams. Our operations are based on a continual improvement program where we review thousands of systems, operational and management metrics in real-time, to fine-tune every aspect of our operation and activities. We continually train and retrain all people in our teams. We provide all people in our teams with the time, space, and inspiration to research, understand, and explore the Internet in search of greater knowledge. We do this while providing you with the best hosting services for the lowest possible price.
- Data Center
ASPHostPortal modular Tier-3 data center was specifically designed to be a world-class web hosting facility totally dedicated to uncompromised performance and security
- Monitoring Services
From the moment your server is connected to our network it is monitored for connectivity, disk, memory and CPU utilization – as well as hardware failures. Our engineers are alerted to potential issues before they become critical.
- Network
ASPHostPortal has architected its network like no other hosting company. Every facet of our network infrastructure scales to gigabit speeds with no single point of failure.
- Security
Network security and the security of your server are ASPHostPortal’s top priorities. Our security team is constantly monitoring the entire network for unusual or suspicious behavior so that when it is detected we can address the issue before our network or your server is affected.
- Support Services
Engineers staff our data center 24 hours a day, 7 days a week, 365 days a year to manage the network infrastructure and oversee top-of-the-line servers that host our clients’ critical sites and services.



Cheap ASP.NET 4.5 Hosting

We’re a company that works differently to most. Value is what we output and help our customers achieve, not how much money we put in the bank. It’s not because we are altruistic. It’s based on an even simpler principle. "Do good things, and good things will come to you".

Success for us is something that is continually experienced, not something that is reached. For us it is all about the experience – more than the journey. Life is a continual experience. We see the Internet as being an incredible amplifier to the experience of life for all of us. It can help humanity come together to explode in knowledge exploration and discussion. It is continual enlightenment of new ideas, experiences, and passions


Author Link


 

Corporate Address (Location)

ASPHostPortal
170 W 56th Street, Suite 121
New York, NY 10019
United States

Tag cloud

Sign in