SqlDataReader.GetTimeSpan doesn't exist in mono for unity but exists in visual studio help!
Hi everyone, i looked at other answers to see if the question has been submitted before and i couldn't find what i want.
basically i need to get some data which are located in a sql server. I entered data manually in the sql server and by following some tutorials, i am able to connect to the database, enter a sql request and get values. (good)
To store values, i declare variables with the related types and while the SqlDataReader is reading, i store the data in my variables. I am encountering a problem with the TimeSpan type. On visual studio, my C# script is perfectly working and i can get the TimeSpan type value with the following line of code :
SqlDataReader reader = cmd.ExecuteReader();
TimeSpan time;
while (reader.Read())
{
time = reader.GetTimeSpan(1);
// and i display it with Debug.Log in unity or Console.WriteLine in VS
}
This code works on visual studio but when i copy it into a C# script in mono, it doesn't work and i got an error at "reader.GetTimeSpan()" saying "error CS1061: Type `System.Data.SqlClient.SqlDataReader' does not contain a definition for GetTimeSpan and no extension method GetTimeSpan of type System.Data.SqlClient.SqlDataReader could be found (are you missing a using directive or an assembly reference?"
I couldn't find a solution until now because the function does exist in C# and we can find it online on the documentation but not in mono. Because we need to add some .dll into the assets or plugins folder to make it work, i guess the dll for VS must be different but i don't understand why and i don't know which ones i should add to my project . Anyone can help me?
Here is the full script:
using UnityEngine;
using System.Collections;
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Diagnostics;
using System.Linq;
using System.Text;
//using System.Threading.Tasks;
public class GetTime : MonoBehaviour {
// Use this for initialization
void Start () {
getTime ();
}
static void getTime()
{
string connectionString = null;
SqlConnection conn;
connectionString = "Data Source='addServerName';User ID='addUserId';Password='addPassword'";
conn = new SqlConnection(connectionString);
try
{
conn.Open();
// Debug.Log("Connection Open ! ");
}
catch (Exception ex)
{
Console.WriteLine("Can not open connection ! ");
}
SqlCommand cmd = new SqlCommand("SELECT Heure FROM [myDatabase]", conn);
SqlDataReader reader = cmd.ExecuteReader();
TimeSpan heure;
while (reader.Read())
{
heure = reader.GetTimeSpan(0);
// Debug.Log("{0}", heure);
}
reader.Close();
conn.Close();
}
}
Your answer
Follow this Question
Related Questions
MSSQL 2014 Connection and Socket Exception 1 Answer
Security with android 1 Answer
Connect Unity to Microsoft azure database? 4 Answers
SQL Connection security (Android) 1 Answer