The issue is likely to be a difference in collation settings between your "local" SQL Server and your "live" SQL Server and as a result the wrong collation being used by your database and database objects.
You need to pay close attention to server parameters (ANSI settings, Collation etc) when installing a development server to ensure they fully match your production server. The same applies to the database parameters. See this somewhat old but still relevant article about how collation settings work.
You can find out the current collation settings either through SSMS or by running the following queries (see MSDN):
-- Server Collation Setting
SELECT CONVERT (varchar, SERVERPROPERTY('collation'));
-- Database Collation Settings
SELECT name, collation_name FROM sys.databases;
-- Table column Collation Settings
SELECT t.name, c.name AS ColName, *
FROM sys.tables AS t
INNER JOIN sys.columns AS c ON t.object_id = c.object_id
WHERE not collation_name is NULL
ORDER BY t.name, column_id
You have two choices in how to resolve this:
Change collation setting of your database and all objects
To resolve this collation difference on the "live" environament you will need to:
1. Change collation of your database to match the collation setting of the production server
2. Change collation of every column in your tables / views etc (see this post)
The easiest solution is to just recreate every single object in the database (after you change DB collation) with the correct collation setting.
Modify your code
The 2nd option is what people have suggested in comments, namelly explicitly specify collation setting "everywhere" in your code. This option should be used as a last resort or when absoluely necessary (cannot think of a reason when this may be necessary).
Miscellaneous
It is also possible to change collation of the server but this is not really an option.