Archive for category .Net
InfoPath cannot grant access to these files and settings because the form template is not fully trusted. For a form to run with full trust, it must be installed or digitally signed with a certificate – InfoPath 2007 forms Security Levels
Posted by Rajanihanth in .Net, Active Directory, DirectoryServices, InfoPath 2007, InfoPath 2010 on July 18, 2012
After giving the Full Trust to the Form template (See here), we will be able to preview the InfoPath form and get information from other domains, or access files and settings on a user’s computer. But when we publish InfoPath form on SharePoint and try to access the from then you will be getting this error. 😦
Error:
Details:
Text format of the error:
Form template: file:///C:\Documents%20and%20Settings\RajanihanthV\Desktop\XmlProc\InfoPath\ADInfo.xsn</pre> The form template is trying to access files and settings on your computer. InfoPath cannot grant access to these files and settings because the form template is not fully trusted. For a form to run with full trust, it must be installed or digitally signed with a certificate.
If we need to access the form from SharePoint, we need to be digitally signed the form even it is fully trusted. This is pretty simple, but we have to do this process after publishing the form on SharePoint only. Here are the steps.
Step 1: Navigate to the Document (form) Library, where your form published
Step 2: Click Settings on the Document Library Settings
Step 3: Advanced Settings
Step 4: Edit Template
Step 5: Click the Form Options on the Tools menu
Step 6: Click Sign this Form Template and create or select certificate, then OK
That’s all. You can try and see. 🙂
This will work only for you (author), If you want give access to all users you have to get the digital signature from 3rd party vendors and signed the form.
Thanks. R./
Difference between ‘ref’ and ‘out’ parameters (ref vs out) – C#
Posted by Rajanihanth in .Net, Tech Tips-.Net, Versus (vs) on July 14, 2012
- Both are treated differently @ runtime but same in the compile time, so can’t be overloaded.
- Both are passed by references except ‘ref’ requires that the variable to be initialized before passed.
ref:
class Program { static void M1(out int i) { i = 1; i += 1; } static void Main(string[] args) { int j; //Not assigned M1(out j); Console.Write(j); Console.Read(); } } }
The output is : 2
out:
class Program { static void M1(ref int i) { i = 1; i += 1; } static void Main(string[] args) { int j=0; //Assigned M1(ref j); Console.Write(j); Console.Read(); } }
The output is same: 2, but we have to assigned the variable before used otherwise we will get an error.
‘Microsoft.SharePoint.Client.Form’ does not contain a constructor that takes 0 arguments – SharePoint 2010 Client Object Model
Posted by Rajanihanth in .Net, Client Object model, SharePoint 2010 on July 13, 2012
To fix this issue, just click here. Thanks, R../
‘Form’ is an ambiguous reference between ‘System.Windows.Forms.Form’ and ‘Microsoft.SharePoint.Client.Form’ – SharePoint 2010 Client Object Model
Posted by Rajanihanth in .Net, Client Object model, SharePoint 2010 on July 13, 2012
When you try to use the Client Object Model (SharePoint 2010) with Windows Application in Visual Studio 2010, you might be getting these error messages. (You can find the step by step instructions to use the SharePoint 2010 Client Object Model here)
Error Message:
'Form' is an ambiguous reference between 'System.Windows.Forms.Form' and 'Microsoft.SharePoint.Client.Form'
Reason: The reason is obvious and we can get from the error message itself. Yes, after added the SharePoint Client reference to the code, there is a conflict between ‘System.Windows.Forms.Form’ and ‘Microsoft.SharePoint.Client.Form’! Initially our Form1 class inherits from Form class (by default System.Windows.Forms.Form) and currently our program confuses to choose the correct reference.
Solution: Provide full reference to the Form class will be the solution for this issue, so replace ‘Form‘ with ‘System.Windows.Forms.Form‘
After Replacing the code:
public partial class Form1 : System.Windows.Forms.Form { public Form1() { InitializeComponent(); } }
That’s all guys, Happy Programming with Client Object Model.
Thanks, R../
The type or namespace name ‘SharePoint’ does not exist in the namespace ‘Microsoft’ (are you missing an assembly reference?) – SharePoint 2010 Client Object Model dlls
Posted by Rajanihanth in .Net, Client Object model, SharePoint 2010 on July 13, 2012
When I started using the Client Object model (Client OM) in SharePoint 2010, I have got this simple error and I just want to share with you in this blog. Following was my develpment environment.
- Windows 7, 64 bit
- Console Application Visual Studio 2010
- Added Client Object Model references (Microsoft.SharePoint.Client.dll & Microsoft.SharePoint.Client.Runtime.dll) to the solution
After setting up all the above, I was trying to add the client reference to the code ‘using Microsoft.SharePoint.Client;‘and then I have got the following error and warnings 🙂
The text format of error is:
"The type or namespace name 'SharePoint' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)"
It’s an obvious error message and the reason of this error is:
SharePoint 2010 does not support .Net 4.0 in default and Visual Studio 2010 default framework is .Net 4.0.
Here are the simple steps to fix this:
Step 1: Right click on the project –> Properties
Step 2: Change the Target framework –> .Net Framework 3.5
Step 3: Warning message will be popping up, click Yes.
That’s all. Happy Coding..!
Please Note: If you use Windows Application then you will be getting an other error message! 😦 To solve this issue just click here.
Getting started with Silverlight – Visual Studio 2010
Posted by Rajanihanth in .Net, Silverlight on July 3, 2012
Actually this is my first Silverlight application development, I didn’t get any chance to work with Silverlight in a real time project, so I just wanted to try an application with Silverlight in Visual Studio 2010. It is pretty simple like windows application. 🙂
This is my environment: Visual Studio 2010, Silverlight 4 developer edition and Windows 7.
When I tried to create an application, I have got few version conflict problems and I resolved them. You can see in my previous post if you need. Okay.. we will see the steps.
Step 1: Open the Visual Studio and click New Project
Step 2: Choose the programming language and select Silverlight node in the left pane.
Step 3: Select the Silverlight application on the middle pane and enter the application name on the Textbox then click ok.
Step 4: You will be getting the following screen.
Please Note: If you want to enable the WCF RIA Services to access the external data using this application then click the check box. I don’t want to do any, so I just click ok.
Step 5: Here is our solution explorer. If you want to learn about the files and other stuffs just click here and learn more.
Step 6: Just click on the Toolbox on the left side vertical tab (If not shown just click View –> Toolbox OR Ctrl+W, X) and drag and drop the button.
Step 7: Modify the button properties (You can either modify in the property tab on the right side (as usual we do) OR you can modify in the XAML pane).
I have given the button Name=”buttonClick”, Content=”Click”, Height=”50″ and Width=”100″
Step 8: Like button add TextBox and a Label as well. So our design will be displaying like this.
and the XAML:
<Grid x:Name="LayoutRoot" Background="White"> <Button Content="Click" Height="50" HorizontalAlignment="Left" Margin="152,133,0,0" Name="buttonClick" VerticalAlignment="Top" Width="100" /> <TextBox Height="25" HorizontalAlignment="Left" Margin="85,70,0,0" Name="textBoxEnter" VerticalAlignment="Top" Width="230" /> <TextBlock Height="25" HorizontalAlignment="Left" Margin="85,101,0,0" Name="textBlockDisplay" Text="" VerticalAlignment="Top" Width="230" /> </Grid>
Step 9: Double click on the Button to create the click event (You can do this on the right side event tab also) and then write the c# code to getting the string form TextBox and displaying on the Label.
private void buttonClick_Click(object sender, RoutedEventArgs e) { textBlockDisplay.Text = "Hello " + textBoxEnter.Text; buttonClick.Content = "Clicked"; }
Step 10: That’s all guys, just click the run button (F5) to see our 1st Silverlight application. 🙂
Happy Silverlighing..! We will see the database access later! 🙂
Thanks R./
Constructors and Destructors (C#)
Posted by Rajanihanth in .Net, Tech Tips-.Net on June 26, 2012
This is for my quick references and I have taken most of the information from MSDN and other web sites. BTW I have written and tested the source!
Constructors
– Constructors are methods that are executed when an object of a class is created.
– They have the same name as the class.
– A class may have multiple constructors that take different arguments.
– Constructors enable the programmer to set default values.
– Like class, structs also can have constructors.
There are 3 kind of constructors in .Net (as far as I know), they are
- Instance Constructors -Used to create and initialize instances of the class
- Private Constructors – A special type of instance constructor that is not accessible outside the class (cannot be instantiated)
- Static Constructors – Automatically initialize the class before the first instance is created or any static members are referenced
public class A //Class Name A { public int i; public A() // Constructor of A { i=1; } }
class Program { static void Main(string[] args) { A a = new A(); //Initiated with new Operator Console.WriteLine("The initialized value is: {0}", a.i); System.Console.ReadLine(); //This line is to stop the result window } }
Destructors
– are used to destruct instances of classes.
– cannot be defined in structs. They are only used with classes.
– A class can only have one destructor.
– cannot be inherited or overloaded.
– cannot be called. They are invoked automatically
– does not take modifiers or have parameters.
class A { public A() { Console.WriteLine("Constructor"); } ~A() { Console.WriteLine("Destructor"); } }
class Program { static void Main(string[] args) { A a = new A(); //Initiated with new Operator System.Console.ReadLine(); //This line is to stop the result window } }
Access is denied: ‘xxx.dll’ – Manually add an assembly (.dll) to the GAC on Windows Server 2008 R2
Posted by Rajanihanth in .Net, GAC, SharePoint 2007, SharePoint 2010, Webpart on June 26, 2012
I supposed to post this issue few months ago, but I don’t really know why this has been in my draft folder till this date! When we were migrating our servers to new environment, we deployed some custom web parts manually. While deploying the web part (Drag and drop the assembly (web part .dll) into Global Assembly Cache (GAC) folder) I have got the following wired error message! 😦
GAC normally located in C:\Windows\assembly directory, and ‘WebPartStepBiStep.dll‘ is my web part assembly.
After spending some time on the web, I have got the solution here. Actually the ‘User Account Control: run all administrators in Admin Approval Mode’ was Enabled on the Local Security Policy. Which means the local administrators group required Admin Approval Mode (AAM) to perform these kind of operations. Here is the definition for Admin Approval Mode (AAM) from MicroSoft site.
Admin Approval Mode: AAM is a User Account Control (UAC) configuration in which a split user access token is created for an administrator. When an administrator logs on to a Windows Server 2008, the administrator is assigned two separate access tokens. Without AAM, an administrator account receives only one access token, which grants that administrator access to all Windows resources.
To access the Local Security Policy, either we can goto the Administrative Tools –> Local Security Policy OR we can run the ‘secpol.msc’ on the command prompt.
Start –> Administrative Tools –> Local Security Policy
Click Start –> Cmd –> type ‘secpol.msc’ then enter
You will be getting the Local Security Policy window like below and the highlighted is the AAM.
So the solution for our problem is Disabled the User Account Control. To do this double click on the highlighted policy on the Local Security Policy above and then you will be getting this window.
Click Disabled and OK.
After disabling this you will be able to drag and drop the .dll to the GAC.
Please Note: 1. Rebooted required for changes to the local security policy on the server.
2. Disabling this can make security problems in your environment, so after completing task, you should be enabled back the UAC.
That’s all guys, Happy drag and dropping..!
Thanks. R/.
References: