AssetDatabase.LoadAssetAtPath() won't work at all!

i’m trying to get files from some path, but no matter what i use, just return null, i tried AssetDatabase.LoadAssetAtPath(), Resources.Load() and another solutions, but always null, take a look at my code:

private void ReloadTiles()
			var myScript = (TilesDataBase)target;
			string[] files = Directory.GetFiles(myScript.tilesPath);
			foreach (string file in files)
                if (file.EndsWith(".asset"))
					Debug.Log(file.Replace(Application.dataPath + "/",""));
					var tileData = AssetDatabase.LoadAssetAtPath(file,typeof(TileData)) as TileData;

the first Debug always show me the correct path of the file, but the second always null


e.g. :

AssetDatabase.LoadAssetAtPath<TileData>("Assets/Tiles/Tiles/First Block.asset");

maybe you forget the prefix “Assets/”